Wednesday
复习完cyll的ppt
要求可以走马观花的看一遍
学会自己推导,有一个大致的印象就好
Thursday
学长的笔记进行辅助理解
重点在于第一遍不会的章节上
补充笔记
Friday
回看作业题的解析
不懂就问
善于发问
Saturday
历年卷
复习
刷题
Sunday
重点回看笔记和重难点
机动时间 面向考试的技巧重点回看
复习重点,有一个大致的印象
其中第五道题比较tricky,但是用心想一想也不特别复杂
后代节点不仅包括子节点还有子节点的子节点
- 应该是
- splay树和avl树还有红黑树都会满足二叉树的性质
这个陈述是正确的。下面是详细的解释和理由:
- B+树的定义和性质:
- B+树 是一种自平衡的树数据结构,它维护数据以便于快速插入、删除和查找操作,特别是用于大型数据集的数据库和文件系统中。
- 在B+树中,所有值都存储在叶子节点,而内部节点只存储用于导航的键。
- 叶子节点通常是链式连接的,这使得范围查询变得非常有效。
- 树的度(或分支因子):
- B+树的度或称为分支因子是指节点中子指针的最大数量。例如,一个度为 \(d\) 的B+树中的每个节点可以有最多 \(d\) 个子节点。
- 查找操作的时间复杂度:
- 查找操作的时间复杂度依赖于树的高度。B+树的高度大约为 \(\log_d N\),其中 \(d\) 是树的度,\(N\) 是树中存储的键的数量。
- 即使树的度 \(d\) 在不同的B+树中可能有所不同,查找操作的时间复杂度仍然可以广泛表示为 \(O(\log N)\)。这是因为对数函数的底数改变(在这种情况下是 \(d\)),虽然会影响常数因子,但不会改变时间复杂度的大 \(O\) 表达式。
- 实际上,即使底数 \(d\) 较大或较小,查找操作所需的时间主要由树的高度决定,这总是与 \(\log N\) 成正比。
- 结论:
- 因此,即使树的度不同,查找操作的时间复杂度仍然是 \(O(\log N)\),这说明了B+树设计的效率和其在处理大量数据时保持操作快速的能力。
总之,B+树中的查找操作的时间复杂度确实是 \(O(\log N)\),这一结论对于不同的树度依然成立。
合法红黑树的红色节点的两个子节点一定都是叶子或都不是叶子!
合法红黑树不存在只有一个非叶子节点的红色节点!
上面的情况就是16号节点不满足条件,导致程序出现错误
所以我们需要警惕只有一个非叶儿子的红色节点。