数据结构是计算机存储、组织数据的方式
一、线性结构
上图就是一个简单的线性表。
线性表是具有n个相同类型元素的有限序列(n>=0)
a1是首节点(首元素),an是尾节点(尾元素)
a1是a2的前驱, a2是a1的后继
常见的线性表有:数组、链表、栈、队列、哈希表
二、树形结构
常见的树形结构有:二叉树、AVL树、红黑树、B树、堆、Tire、哈夫曼树、并查集
树的基本概念:
1.节点、根节点、父节点、子节点、兄弟节点
2.一棵树可以没有什么节点,此时为空树
3.一棵树可以只有1个节点,此时为根节点
4.节点的度:子树的个数
5.树的度:所有节点度中的最大值
6.叶子节点:度为0的节点
7.非叶子节点:度不为0的节点
8. 层数:根节点在第一层,根节点的子节点在第二层,依次类推
9.节点的深度:从根节点到当前节点的唯一路径上的节点总数
10.节点的高度:从当前节点到最远叶子节点的路径上的节点总数
11.树的深度:所有节点深度中的最大值
12.树的高度:所有节点高度中的最大值
13.树的深度等于树的高度
三、图形结构
图由顶点和边组成,一般表示为G=(V,E)
G表示一个图,V是顶点集,E是边集
顶点集V有穷且非空
任意两个顶点之间都可以用边来表示它们之间的关系,边集E可以是空的
总结
在实际应用中,可以根据使用场景来选择最合适的数据结构。