数据结构:4.1.1二叉搜素树及查找

静态查找:要找的集合的元素是不动的,主要是find操作,没有delete操作

动态查找:要查找的集合会经常发生插入删除的操作

静态查找的一个很好的方法就是二分查找

把数据直接放在树上

结点右子树的值>结点的值>结点左子树的值

Find函数两个参数,一个要查找的元素X,一个树BST

实现的方式不仅是递归而且是尾递归, 即程序最后要返回的时候递归,从遍历的角度讲尾递归都可以用循环来实现

而 对同样的n个结点来说,查找的效率又与树的结构有关

最坏的情况:只有左儿子或只有右儿子,形成一条链,高度是n-1

所以我们喜欢的是平衡一点的树,这就是之后要学的二叉平衡树。

为什么这两个程序的写法不一样啊???

相关推荐
小星星闪亮登场4 小时前
Codeforces Round 1115 ( Div. 2)
数据结构·c++·算法·贪心算法·排序算法·codeforces
计算机小白一个4 小时前
蓝桥杯 Java B 组之哈希表应用(两数之和、重复元素判断)
java·数据结构·算法·蓝桥杯
Loge编程生活4 小时前
打卡信奥刷题(3449)用C++实现信奥题 P10429 [蓝桥杯 2024 省 B] 拔河
开发语言·数据结构·c++·算法·青少年编程
zander25811 小时前
4. 寻找两个正序数组的中位数:用分割点代替合并
数据结构·算法
敲上瘾12 小时前
redis常用数据类型与操作方法
数据结构·数据库·redis·缓存
牢姐与蒯13 小时前
c++高级数据结构之图(基本概念,存储结构,BFS,DFS,最小生成树)
数据结构·c++·
Tongzhi202613 小时前
考勤数据本地化存储:通芝科技无感考勤一体机的数据安全逻辑
大数据·数据结构·科技·均值算法·数据库开发·推荐算法
她说可以呀14 小时前
Spring-ai-Rag-多文件格式生成 List<Document>
数据结构·list
郝学胜_神的一滴15 小时前
干货版《算法导论》17:双数极值配对与卡牌手牌编码最优解
数据结构·算法
我不会插花弄玉16 小时前
10.list【由浅入深-C++】
数据结构·c++·list