Algorithm 3: Complete binary tree
来源:互联网 发布:mysql 间隙锁 编辑:程序博客网 时间:2024/06/03 20:07
完全二叉树及其性质(可用于heapsort等)
如下图所示,是一棵近似的完全二叉树,以此举例说明。(b)是该树用 数组的存储的表示形式,其中数组中的连线部分,代表着后面被连线的元素是前一个元素的孩子节点。
下面描述,如何通过完全二叉树的相关性质 对于数组中位置下标为 idx 的元素,快速找到其孩子节点的元素在数组中的下表位置ci1,ci2
- 完全二叉树的 节点总数 为
2(n−1)−1 个。设k为完全二叉树的第k层(从第0层起),nodek=2k n为完全二叉树的总层数,则:NodesNum=∑k=0n2k NodesNum=∑k=0n2k=1+21+22+...+2n
根据公式:
∴NodesNum=2n+1−12−1=2n+1−1
2. 因此,当我们想求得数组中 下标为
- 举例说明: 如求得节点3的孩子节点的下标编号
- 求得3节点的上一层
w=⌈log2(3+1)−1⌉−1=0 求得3号节点所在层在3号节点之前的元素个数:3−2(w+1)−1+1=1。 求得3号节点孩子节点所在层的第一个元素的编号:2w+1+1+1=4 求得ci1=4+21=6,ci2=7
- 求得3节点的上一层
阅读全文
0 0
- Algorithm 3: Complete binary tree
- complete binary tree
- 1110. Complete Binary Tree
- Complete Binary Tree
- 1110. Complete Binary Tree
- 1110. Complete Binary Tree
- Complete Binary Search Tree
- Complete Binary Search Tree
- 1064. Complete Binary Search Tree
- PAT_1064: Complete Binary Search Tree
- 1064. Complete Binary Search Tree
- 1064. Complete Binary Search Tree
- 1064.Complete Binary Search Tree
- pat1064 Complete Binary Search Tree
- 1064. Complete Binary Search Tree
- 1064. Complete Binary Search Tree
- Binary Search Tree Complete Implementation
- 1064 Complete Binary Search Tree
- [已解决]vagrant未开启系统虚拟化错误.virtualization VT-x/AMD-V
- http请求状态码
- 虚拟驾驶环境搭建(四)
- GOLANG源码编译安装
- 计算机网络 —— HTTP报文
- Algorithm 3: Complete binary tree
- typedef和#define的区别
- Android Badge 角标 总结
- MySQL 5.7 优化InnoDB配置
- 【贪心】【模拟】[POJ1877]Flooded!
- React Native入门(二)之Hello World(AwesomeProject)项目介绍
- 重磅报告 | 阿里研究院发布新网商五大预测_2020年诞生第一个机器人网商?
- iOS代码规范
- 点宏织造厂ERP生产管理系统解决方案