二叉树
- 什么是二叉树?
当前最多只有两个子节点的树状结构
- 如何存储二叉树?
1.通过指针链表的方式存储。节点结构组成:[data,left,right] 2.通过数组的结构,下标的方式存储: [n, 2n, 2n+1] [当前节点, 左侧子节点,右侧子节点]
- 二叉树的遍历
// 当前节点被遍历的时刻来描述 前序 n -> 2n -> 2n+1 中序 2n -> n -> 2n+1 后序 2n -> 2n+1 -> n
二插查找树
- 什么是二叉查找树?
左侧子节点<当前节点<右侧子节点 的树结构 以实现数据快速插入、删除、和查找的功能
平衡二叉树
- 什么是平衡二叉树?
任何节点的左右子树的高度不得小于1 尽可能的“矮胖”
- 什么是红黑树?
平衡二叉树的一种,根节点黑色标记,上下红色相隔
B+树与B树
-
什么是B+树?
为了按照区间快速查找,对二叉树进行改造,叶子节点通过有序链表来存储 通过m叉树降低树的高度,减少内存消耗与磁盘IO
-
什么是B树?与B+树的区别
B树每个节点都存储数据,B+树根节点存储索引,叶子节点才存储数据
堆
-
什么是堆?
左右侧子节点的值都大于等于或者都小于等于父节点的值的完全二叉树
插入元素、获取堆顶元素、删除堆顶元素、指定指针删除元素
记录自己的学习历程!