26、编程高级主题探索

编程高级主题探索

1. 二叉树相关知识
  • 二叉树结构与数据顺序 :二叉树的形态依赖于数据的插入顺序。若“coulomb”是列表首个单词,树将无左子节点,严重右倾;若“yokel”是首个输入单词,树的形态也会不同。随机数据且起始值接近平均值时,能生成平衡二叉树;若单词按字母顺序插入,二叉树会类似链表。
  • 二叉树搜索
    • 搜索过程 :以在树中查找“tortuous”为例,从根节点“opulent”开始,因“tortuous”大于“opulent”,沿右指针到“salubrious”,再按此算法最终找到“tortuous”。
    • 性能优势 :相比链表搜索,二叉树搜索通常快很多。链表需逐个检查节点,平均要检查一半节点;而平衡二叉树每次检查节点可将搜索空间减半,最大搜索节点数约为$log_2n$($n$为树中节点数),平均搜索$log_2n/2$个节点。例如,100个节点的链表平均检查50个节点,而二叉树平均检查3.32个节点;1000个节点时,链表平均检查500个节点,二叉树约检查5个节点。
  • 二叉树中的递归
    • 递归原理 :二叉树和递归相辅相成。递归搜索树时,递归函数需访问当前节点,并对其两个子节点调用自身,子节点再对自身和它们的子节点做同样操作,遇到终端节点时递归停止。
    • 代码示例
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值