- 1
- 0
- 约小于1千字
- 约 12页
- 2026-08-23 发布于山东
- 举报
罗勇军;高级数据结构之母
效率极高
适合复杂操作:区间(查询、更新、合并)、分治…;每个节点最多有两个子节点:左孩子、右孩子
以它们为根的子树称为左子树、右子树。
二叉树的每个节点不必全有左、右孩子,可以只有一个孩子或没有孩子,没有孩子的结点称为叶子节点。
二叉树的第i层,最多有2i-1个节点
有n个点的平衡二叉树,共有O(logn)层;【满二叉树】
每一层的节点数都是满的
【完全二叉树】
只在最后一层有缺失,缺失的编号都在最后
几乎完美的平衡二叉树;在平衡二叉树上能进行极高效率的访问。例如满二叉树或完全二叉树,二叉树每一层的节点数量按2的倍数递增,能极快地扩展到很大的范围。一棵有N个节点的满二叉树,树的高度是O(logN)。从根节点到叶子节点,只需要走logN步,例如N=100万,树的高度仅有20,只需要20步就能到达100万个节点中的任意一个。
高级数据结构≈基于二叉树的数据结构;“链状”二叉树。
每一层都缺失很多结点,退化成一个长链条状。
失去了二叉树天然的优势。
只有在平衡的二叉树上才能进行高效的操作。
不平衡的二叉树退化成了线性结构,和低效的链表没多大区别。;在算法竞赛中一般用类来定义二叉树。
下面定义一个大小为N的类。N的值根据题目要求设定,有时节点多,例如N=100万。;先(根)序遍历
中(根)序遍历
后(根)序遍历;;;ABCDEFGHI
根节点左边的点都在
您可能关注的文档
- 蓝桥杯算法入门(Python) 课件 1-1蓝桥杯软件赛参赛规则.pptx
- 蓝桥杯算法入门(Python) 课件 1-2蓝桥杯软件赛题型介绍.pptx
- 蓝桥杯算法入门(Python) 课件 1-4蓝桥杯软件赛知识点.pptx
- 蓝桥杯算法入门(Python) 课件 1-5备赛计划.pptx
- 蓝桥杯算法入门(Python) 课件 2-1杂题和编程能力.pptx
- 蓝桥杯算法入门(Python) 课件 2-2杂题例题.pptx
- 蓝桥杯算法入门(Python) 课件 2-3填空题概述.pptx
- 蓝桥杯算法入门(Python) 课件 2-4填空题例题.pptx
- 蓝桥杯算法入门(Python) 课件 3-3链表.pptx
- 蓝桥杯算法入门(Python) 课件 3-8并查集.pptx
原创力文档

文档评论(0)