当前位置:网站首页>二分查找 && 树
二分查找 && 树
2022-08-02 13:32:00 【Ding Jiaxiong】
22. 二分查找 && 树
文章目录
22.1 二分查找
22.1.1 递归代码实现
22.1.2 时间复杂度
- 最优——O(1)
- 最坏——O(logn)
22.2 树
22.2.1 特点
- 每个结点有0个或多个子节点
- 没有父节点的结点称为根节点
- 每一个非根节点有且仅有一个父节点
- 除了根节点外,每个子节点可以分为多个不想交的子树
22.2.2 相关术语
- 节点的度
一个节点含有的子节点的个数称为该节点的度 - 树的度
一棵树中,最大的节点的度称为树的度 - 叶节点(终端节点)
度为0的结点 - 父亲节点(父节点)
若一个节点含有子节点,则这个节点称为其子节点的父节点 - 孩子节点(子节点)
一个节点含有的子树的根节点称为该节点的子节点 - 兄弟节点
具有相同父节点的结点互称为兄弟节点 - 节点的层次
从根节点定义起,根为第一层,以此类推 - 树的高度或深度
树中节点的最大层次 - 堂兄弟节点
父节点在同一层的节点互为堂兄弟 - 节点的祖先
从根到该节点所经分支上的所有节点 - 子孙
以某节点为根的子树中任一节点都称为该节点的子孙 - 森林
由m(m >= 0) 棵互不相交的树的集合称为森林
22.2.3 种类
- 有序树
- 霍夫曼树
- B树
- 二叉树
- 完全二叉树
- 满二叉树
- 非完全二叉树
- 平衡二叉树AVL树
- 排序二叉树BST树——包含空树
- 无序树
22.2.4 二叉树的存储
- 顺序存储
- 链式存储
22.2.5 应用场景
数据库索引
22.2.6 二叉树
性质
遍历
- 广度优先
- 找到最短路径
- 深度优先
- 先序——根左右
- 中序——左根右
- 后序——左右根
- 广度优先
边栏推荐
- [C language] Analysis of function recursion (2)
- How to turn off hardware acceleration [easy to understand]
- 国产 GPU 创业潮 喧嚣下的资本游戏
- Reading IDEO, Design Changes Everything
- [C language] Analysis of function recursion (3)
- Ribbon负载均衡的深度分析和使用
- Taurus.MVC V3.0.3 microservice open source framework released: Make the evolution of .NET architecture easier in large concurrency.
- 吾爱第三课-修改版权和资源
- 自动生成代码器推荐-code-gen
- 数值的整数次方
猜你喜欢
随机推荐
“二舅”火了,自媒体短视频“爆火”的基本要素,你知道吗?
static修饰的函数有什么特点(static可以修饰所有的变量吗)
Fabric.js 动态设置字号大小
Oracle数据库的闪回技术
eclipse连接数据库后插入数据报错null
selenium chrome driver运行时的cannot determine loading status from target frame detached问题
Redis all
你真的懂单例模式么
删除链表的节点
js数组递归使用
SQL函数 TRUNCATE
Wireless vibrating wire acquisition instrument remote modification method
Word | 关于删除分节符(下一页)前面的版式就乱了解决方案
this的绑定指向详细解答
路由-Tab切换页面
最小割和对偶图(未完成)
电脑死机,Word忘了保存怎么办?怎么恢复?(编辑器是WPS)
tinymce 如何实现动态国际化
"Second Uncle" is popular, do you know the basic elements of "exploding" short videos from the media?
【C语言】夏日一题 —— 求最大公约数和最小公倍数