数据结构一览

数据结构是计算机存储、组织数据的方式。
数据结构包括数组、类、链表、队列、栈、树等。
(像int、char、double等属于语言内置的基本数据结构。)
而上面提到的数组等属于语言经过进一步加工后的数据结构。

  1. 数组:
  • 无序的。假如,数组arr中有10个元素,通过index值可以取到里面的任意元素,比如arr[6].并且,取arr[3]和arr[9]是没有先后顺序的,可以先取arr[9]再取arr[3],反之亦可。
  • 数组一旦定义长度后不可变。即使有增删改查的接口,底层实现是先把原来的数组删除,再重新定义一个数组。
  • 可以接受任何数据类型的数据作为其成员结构。
  1. 类:
  • 属性
  • 方法
  1. 链表:
  • 有序的。有一个head,往下就是node,每个节点存储数据和指针,指针作为指向下一个node的向导,有的语言(比如java)删除一个node后,前后node自动连接,有的语言(比如C)需要手动连接。
  1. 队列:
    先进先出
    比如淘宝限时抢购,就可以作为这样一个例子。

  2. 栈:
    先进后出
    多用于算法

  3. 树:
    二叉树多叉树

二叉树有专门的数据存储规则,这套规则使得查找数据变得容易,一般查找一半就能确定下来,但是和链表不一样,链表长度为10,就要查10次;二叉树长度为10,一般查5次就能找到。
两者数据存储空间差不多。

    原文作者:钻石悦
    原文地址: https://www.jianshu.com/p/46bbf05852ff
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞