![]() |
1
2
第六大元素可以是
很
更远的地方。极端的情况是,前六个元素是根元素和一系列正确的子元素。每个子节点都位于节点
最早的位置是,如果相同的值恰好是根的左子级,而其他所有值都是右分支:它出现在位置2。同样,根据需要显示较小的值。 所以 范围 可能值的范围为2到2^n-1。 剩下的问题是确定剩下的哪个位置可以包含第六大元素。
画一棵适当深度的树——更好的是,只画4层深的树,并使用第四大元素。例如,使用99、98、98、96,然后“其他”值可以是1到11。这棵树上有什么地方可以放
将树再展开一级。
现在
你不能放进去的洞在哪里
这能让你摆脱困境吗? |
![]() |
2
2
n个项目的堆的高度(称为h)为log 2. (n) ,向上取整。假设有一个完整的最小堆,第k个项目几乎可以在任何地方,但要受到以下限制。
考虑7个级别的完整堆。堆本身有127个节点。第二级的每个节点都是63个节点的完整堆。因此,第二级的每个项目都必须有62个较小的值。第96个最小的项目不可能位于第二级,因为没有62个更大的值来填充其树。 这些规则可以帮助您支持顺序搜索,但它并没有给您带来很多好处。在7级堆中,第96个最小的项可以高达3级,也可以低至7级。节点只能处于三个位置。 如果您使用的是最大堆,请将上面的“最小”更改为“最大” |
![]() |
feasega · 聚合物模拟-2个节点之间的最短路线,适用于所有节点 6 月前 |
![]() |
Alisa Petrova · 在有向图中更改一对顶点以创建循环 6 月前 |
![]() |
b39b332d · 使用C++标准库实现高效间隔存储 11 月前 |
![]() |
Paul C · 在维基百科上,将二叉搜索树转换为排序链表的算法是否存在错误? 11 月前 |
![]() |
ABGR · 二叉树的直径——当最长路径不通过根时的失败案例 11 月前 |
![]() |
EpicAshman · 数独棋盘程序中同一列和同一行出现两次的数字 11 月前 |