数据结构之二叉树查询

二叉树之查询

二叉树的查询是建立遍历的基础上更进一步的对比查询,下面分别从前序、中序、后续三种方法中查询对应的节点。

前序查找

java 复制代码
    /**
     * 前序查询
     */
    public Person preSelectById(Integer id) {
        Person person = null;
        if (this.data.getId().equals(id)) {
            person = this.data;
        }
        if (Objects.isNull(person) && Objects.nonNull(this.left)) {
            person = this.left.preSelectById(id);
        }
        if (Objects.isNull(person) && Objects.nonNull(this.right)) {
            person = this.right.preSelectById(id);
        }
        return person;
    }

中序查找

java 复制代码
    /**
     * 中序查询
     */
    public Person midSelectById(Integer id) {
        Person person = null;
        if (Objects.isNull(person) && Objects.nonNull(this.left)) {
            person = this.left.preSelectById(id);
        }
        if (this.data.getId().equals(id)) {
            person = this.data;
        }
        if (Objects.isNull(person) && Objects.nonNull(this.right)) {
            person = this.right.preSelectById(id);
        }
        return person;
    }

后序查找

java 复制代码
    /**
     * 后序查询
     */
    public Person postSelectById(Integer id) {
        Person person = null;
        if (Objects.isNull(person) && Objects.nonNull(this.left)) {
            person = this.left.preSelectById(id);
        }
        if (Objects.isNull(person) && Objects.nonNull(this.right)) {
            person = this.right.preSelectById(id);
        }
        if (this.data.getId().equals(id)) {
            person = this.data;
        }
        return person;
    }

源码与测试案例

gitee地址

相关推荐
学嵌入式的小杨同学21 分钟前
【嵌入式 C 语言实战】手动实现字符串四大核心函数(strcpy/strcat/strlen/strcmp)
c语言·开发语言·前端·javascript·数据结构·数据库·算法
人工干智能29 分钟前
Pandas核心数据结构:Series与DataFrame
数据结构·python·pandas
Yolo_TvT1 小时前
数据结构:初识“树”
数据结构
信奥卷王1 小时前
2025年9月GESPC++四级真题解析(含视频)
数据结构·c++·算法
jimy11 小时前
创建链表注意项(三):使用内存池减少malloc开销(用标志位或空闲链表)
数据结构·链表
源代码•宸1 小时前
Golang原理剖析(Sync.Map)
数据结构·经验分享·后端·golang·sync.map·readmap·dirtymap
Cher ~1 小时前
【数据结构】stl 容器
开发语言·数据结构·c++
uoKent2 小时前
c++中的初始化列表
数据结构·c++
alonewolf_992 小时前
Redis 7 核心数据结构指南:从基础到实战应用
数据结构·redis·分布式架构