-
常见数据结构
- 数组型:数组,栈,队列
- 链表型:链表,跳表,散列表
- 树型:树,堆,图
-
树:二叉树,二叉查找树,笛卡尔树,B树(一种平衡的多叉树),T树
- 二叉查找树:二叉平衡树(AVL树),红黑树
-
树的遍历:前序、中序、后序、层序
-堆:大根堆、小根堆。层序表示 -
平衡二叉树:
- 左子节点<父节点<右子节点。
- 左子树与右子树的高度差(平衡因子)的绝对值最大为1
-
红黑树:
- 每个节点非红即黑
- 根节点是黑的;
- 每个叶节点(叶节点即树尾端NULL指针或NULL节点)都是黑的;
- 如图所示,如果一个节点是红的,那么它的两儿子都是黑的;
- 对于任意节点而言,其到叶子点树NULL指针的每条路径都包含相同数目的黑节点;
- 每条路径都包含相同的黑节点;
-
B树:(B一般认为表示平衡(balanced),但也有其他说法)
- 根节点至少有两个子节点;
- 每个非根节点所包含的关键字个数 j 满足:┌m/2┐ - 1 <= j <= m - 1;
- 除根节点以外的所有节点(不包括叶子节点)的度数正好是关键字总数加1,故内部子树个数 k 满足:┌m/2┐ <= k <= m ;
- 所有的叶子节点都位于同一层
-
B+树:是B树的一种变形形式,B+树上的叶子节点存储关键字以及相应记录的地址,叶子节点以上各层作为索引使用。
- 每个结点至多有m个子女
- 除根结点外,每个结点至少有[m/2]个子女,根结点至少有两个子女
- 有k个子女的结点必有k个关键字。
-
图的表示法:邻接矩阵法,邻接链表法,十字链表法
https://mp.weixin.qq.com/s/5NfKB9Yp2haB3x5_9C40mA