惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
NISL@THU
NISL@THU
E
Exploit-DB.com RSS Feed
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
K
Kaspersky official blog
Project Zero
Project Zero
Cisco Talos Blog
Cisco Talos Blog
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
S
Schneier on Security
G
GRAHAM CLULEY
The Hacker News
The Hacker News
T
Threat Research - Cisco Blogs
Scott Helme
Scott Helme
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy & Cybersecurity Law Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
T
Tor Project blog
AWS News Blog
AWS News Blog
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
爱范儿
爱范儿
P
Privacy International News Feed
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
S
Securelist
G
Google Developers Blog
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
美团技术团队
F
Fortinet All Blogs
小众软件
小众软件
Recorded Future
Recorded Future
V
Visual Studio Blog
B
Blog RSS Feed
H
Help Net Security
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Google DeepMind News
Google DeepMind News
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
Stack Overflow Blog
Stack Overflow Blog
Martin Fowler
Martin Fowler
Latest news
Latest news
Spread Privacy
Spread Privacy
H
Heimdal Security Blog

博客园 - headchen

博文阅读密码验证 - 博客园 二进制集合运算 - headchen - 博客园 OI中字符串读入和处理 扫描线算法 评论备份(3) 评论备份(2) 用户中心 - 博客园 二分法的注意事项 sam模板 二分图相关 KMP算法详解 用户中心 - 博客园 中国国家集训队论文集目录(1999-2009) 最短路Dijkstra算法的一些扩展问题 用户中心 - 博客园 async await 异步编程杂记 IOS 杂记 合并 ios 静态库 android studio 偶记
完全二叉树的性质
headchen · 2018-06-12 · via 博客园 - headchen

完全二叉树的性质

定义

满二叉树
一棵深度为k,且有 \(2^{k+1}-1\) 个节点的二叉树,称为满二叉树(Full Binary Tree)。 这种树的特点是每一层上的节点数都是最大节点数。
完全二叉树
而在一棵二叉树中,除最后一层外,若其余层都是满的,并且最后一层或者是满的,或者是在右边缺少连续若干节点,则此二叉树为完全二叉树(Complete Binary Tree)。
高度(深度)
即层数k,注意【根】定义为\(height(root)=0\)

性质

  1. 具有n个节点的完全二叉树的深度为 \(k=log_{2}n\)
  2. 【满二叉树】\(i\)层的节点数目为:\(2^i\)
  3. 【满二叉树】节点总数和深度的关系:\(n=\sum_{i=0}^{k}2^i = 2^{k+1}-1\)
  4. 【完全二叉树】最后一层的节点数为:\(n-(2^k - 1) = n + 1 -2^k\) (因为除最后一层外,为【满二叉树】)
  5. 【完全二叉树】左子树的节点数为(总节点为n):

\[l(n) = \begin{cases} n-2^{k-1}, & n+1-2^k \le 2^{k-1} \text{ 因为最后一层全部都在左子树,右子树为【满二叉树】高度为 k-2}\\ 2^{k}-1, & n+1-2^k \gt 2^{k-1} \text{ 因为左子树为满二叉树,高度为k-1} \end{cases} \]

  1. 【完全二叉树】右子树: \(r(n) = n-l(n)\)