常见的数据结构,线性表、队列、树、图
线性表
- 数组:采用
连续的存储单元
来存储数据的线性表,查找方便,但是插入、删除数据比较麻烦。 - 链表:一种
物理上非连续、非顺序
的存储单元,但是逻辑上是连贯
的,这种连贯通过指针实现,上一个元素存着下一个元素的内存位置。查找效率低于数组,但是添加删除元素相当方便。
栈与队列
- 栈:
先进后出
的数据结构,插入和删除只能在栈顶进行,类似于手机的子弹壳。常用的操作是push(入栈)和pop(出栈)。 - 队列:
先进先出
的数据结构,允许在表的前端进行删除操作,在后端进行插入操作,类似于食堂排队取餐。
树与二叉树
- 树
- 二叉树
- 二叉查找树
- 平衡二叉树
- 红黑树