数据结构汇总
https://blog.csdn.net/m0_37568814/article/details/81288756
https://zhuanlan.zhihu.com/p/138523723
1 分类
数据结构包括:逻辑结构,存储结构,数据运算
数据的逻辑结构主要分为线性结构和非线性结构。
- 线性结构:数据结构的元素之间存在一对一线性关系,所有结点都最多只有一个直接前趋结点和一个直接后继结点。常见的有数组、队列、链表、栈。
- 非线性结构:各个结点之间具有多个对应关系,一个结点可能有多个直接前趋结点和多个直接后继结点。常见的有多维数组、广义表、树结构和图结构等。
数据的存储结构,表示数据元素之间的逻辑关系,一种数据结构的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有:
- 顺序存储:存储顺序是连续的,在内存中用一组地址连续的存储单元依次存储线性表的各个数据元素。
- 链式存储:在内存中的存储元素不一定是连续的,用任意地址的存储单元存储元素,元素节点存放数据元素以及通过指针指向相邻元素的地址信息。
- 索引存储:除建立存储结点信息外,还建立附加的索引表来标识节点的地址。索引表由若干索引项组成。
- 散列存储:又称Hash存储,由节点的关键码值决定节点的存储地址。
2 常用的数据结构
- 数组(Array)
- 队列(Queue)
- 链表(Linked List)
- 栈(Stack)
- 树(Tree)
- 散列表(Hash)
- 堆(Heap)
- 图(Graph)