树
- 树:是一种层次关系,如人类社会家谱,社会组织结构,图书管理系统
树存在的原因:层次管理在管理上具有更高的效率查找
- 静态查找(例如放在数组中:
- 顺序查找(最简单,效率不高:将元素放在数组中,用一个结构指向数组,结构含两个分量,一个分量是指针指向数组的头,另一个分量代表数组中存放的的元素个数
- 二分查找(前提,有序存放,必须存放在 数组中:
- 找得到的情况
- 找不到的情况(以边界错位:右端下标小于左端下标结束
-
结构的指针:结构包含两个分量,一个分量是数组,另一个分量是数组的大小
-
时间复杂度:计算依据- 每次除以二最终等于一
- 找得到的情况
- 引入:用树的形式存储数据使得我们的一些查找过程更加方便-查找树
最大的优点:在树中插入或删除数据时比在数组里面方便得多,解决动态查找问题
*ASL:平均成功查找次数
- 树(Tree):由n(n>=0)个结点构成的有限集合;n=0时,称为空树;每个树的子树也是一个树;树是保证结点联通的最小的一种连接方式
- 树的有关术语:
- 树的表示:儿子-兄弟表示法,树上的每一个节点结构是统一的,有两个指针域,一个指向第一个子结点,一个指向兄弟结点
- 二叉树(树结构研究里最重要也是最主要的内容):有关存储,操作实现以及主要应用
概念:是一个有穷的结点集合,可以为空。若不为空,则它是由根结点和左子树及右子树这两个不相交的二叉树组成 - 二叉树的形态、特殊二叉树及二叉树的重要性质
- 二叉树的重要操作:最重要-遍历
*在自动排序写好的句子里按tab键,分出123
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异