当前位置:网站首页>二叉查找树的查找
二叉查找树的查找
2022-08-02 16:58:00 【chengqiuming】
一 点睛
因为二叉查找树的中序遍历的有序性,所以查找与二分法查找类似,每次都缩小查找范围,查找效率较高。
二 算法步骤
1 若二叉查找树为空,查找失败,则返回空。
2 若二叉查找树非空,则将待查找的关键字 x 与根节点关键字 T.data 进行比较
若 x== T.data,查找成功,则返回 T。
若 x<T.data,则递归查找左子树。
若 x>t.data,则递归查找右子树。
三 图解
1 二叉查找树如下,查找关键字 32
2 第一次查找
3 第二次查找
4 第三次查找
四 代码
// 二叉排序树的递归查找
static public TreeNode search(TreeNode root, int val) {
// 若查找成功,则返回指向该数据元素结点的指针,否则返回空指针
if ((root == null) || val == root.val)
return root;
else if (val < root.val)
return search(root.left, val); // 在左子树中继续查找
else
return search(root.right, val); // 在右子树中继续查找
}
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode() {
}
TreeNode(int val) {
this.val = val;
}
}
边栏推荐
猜你喜欢
随机推荐
JWT原理详解_电磁感应现象原理
Kubernetes:(六)Pod重启策略和状态解释
golang刷leetcode动态规划(8)盈利计划
Gartner released, annual Challenger!
默认用户名和密码(SQL)
小心 transmittable-thread-local 的这个坑
In the idea to create a web project _idea deployment of the web project
LeetCode·76.最小覆盖子串·滑动窗口
内网渗透之kerberos认证(三)
Nacos配置中心用法详细介绍
Special Variables (SQL)
Informatica旗下PowerCenter的元数据库解析
Alibaba最新神作——1015页分布式全栈手册太香了
Pytest study notes
【电子器件笔记7】MOS管参数和选型
DeepMind 首席科学家 Oriol Vinyals 最新访谈:通用 AI 的未来是强交互式元学习
【无标题】
【300+精选大厂面试题持续分享】大数据运维尖刀面试题专栏(十)
MYSQL一站式学习,看完即学完
Oracle 11 g rac finished patch, dbca new patches of SQL database also needs to perform?