当前位置:网站首页>二叉查找树的查找
二叉查找树的查找
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;
}
}边栏推荐
- 周末看点回顾|亚马逊将于2023年底关闭Amazon Drive网盘服务;千寻位置发布时空智能六大底层自研技术…
- Nacos的基本配置
- 红蓝对抗经验分享:CS免杀姿势
- golang源码阅读(11)GO中各个目录的功能
- DeepMind 首席科学家 Oriol Vinyals 最新访谈:通用 AI 的未来是强交互式元学习
- What is an APS system?What should I pay attention to when importing APS?Worth watching again and again
- 小心 transmittable-thread-local 的这个坑
- 【二】通过props进行传值,子页面多种方式接收
- nacos简单使用
- 电烙铁的基础知识
猜你喜欢
![[300+ selected big factory interview questions continue to share] Big data operation and maintenance sharp knife interview questions column (10)](/img/cf/44b3983dd5d5f7b92d90d918215908.png)
[300+ selected big factory interview questions continue to share] Big data operation and maintenance sharp knife interview questions column (10)

FP6606CLP5 SOP-8 USB Type-C和PD充电控制器

Mysql开启binlog

nacos集群配置详解

navicat creates a connection 2002-can't connect to server on localhost (10061) and the mysql service has started the problem

nacos简单使用

MYSQL一站式学习,看完即学完

LeetCode·76.最小覆盖子串·滑动窗口

【二】通过props进行传值,子页面多种方式接收

Pytest study notes
随机推荐
Pytest学习笔记
一文搞懂│php 中的 DI 依赖注入
边界访问的空间权限
Navicat premium download and install 15 detailed tutorial
uniapp引入vantUI库
FPGA 20个例程篇:10.遍历DDR3内存颗粒读写循环校验
如何生成随机数+原理详细分析
Nacos面试题
Flink SQL搭建实时数仓DWD层
电烙铁的基础知识
Mysql——分组统计
创新云集技术咖,工赋汇聚实战派:2022工赋开发者峰会
持续交付(一)JenkinsAPI接口调用
Smart Contract Security - delegatecall (1)
Common software silent installation parameters
用函数递归的方法解决汉诺塔问题
启航
乌总统解除乌克兰国家安全局信息和情报分析部负责人职务
MYSQL下载及安装完整教程
JS数组删除其中一个元素