二叉树的应用

本文介绍了二叉排序树和二叉搜索树的概念及其应用。二叉排序树在建立过程中实现数据初步排序,通过中序遍历可得到有序序列。二叉搜索树则保证每个节点的数据大于左子树节点且小于右子树节点,便于高效搜索。通过FindTree函数,可以实现对二叉搜索树的搜索操作。
摘要由CSDN通过智能技术生成

一、二叉排序树

在建立二叉树的同时,数据已经经过初步的比较,并按照二叉树的建立规则来存放数据,规则如下:

  • 第一个输入数据作为根节点
  • 之后的数据以递归的方式与树根进行比较,小于树根置于左子树,大于树根置于右子树

按照上述规则建立好二叉树后,只要利用中序遍历方式就可得到由小到大排序好的数据。如果想得到由大到小排列,可将最后结果置于堆栈内再POP出来。

二、二叉搜索树

如果一个二叉树符合“每一个节点的数据大于左子树节点且小于右子树节点”,称这样的树为二分树,二分树便于排序和搜索。只需在二叉排序树中将要搜索的值与树根进行比较,若小于树根,则往左子树走进行比较,若大于树根则往右子树走进行比较。

二叉搜索树的搜索过程为,首先建立一棵二叉排序树,输入要寻找的值,若找到则显示搜索的次数,若找不到则显示提示信息。
我们编写boolean FindTree(TreeNode node,int value)函数来进行搜索,将树根和待搜索值传递给函数,具体代码如下:

    /*在二叉树中搜索值value*/
    public static boolean FindTree(TreeNode node,int valu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值