博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二叉搜索树的实现 java
阅读量:7135 次
发布时间:2019-06-28

本文共 1557 字,大约阅读时间需要 5 分钟。

package hello;public class BinaryTree {    private Node root;    public BinaryTree() {        this.root = null;    }    public void insert(int data) {        root=insert(root, data);    }    private Node insert(Node node, int data) {        if (node == null) {            node = new Node(data);        }else{             if(data <= node.data) {                node.left = insert(node.left, data);            } else {                node.right = insert(node.right, data);            }        }        return node;    }    public void buildTree(int[] data) {        for (int i = 0; i < data.length; i++) {            insert(data[i]);        }    }        public void print(){        printNode(root);        System.out.println();    }        private void printNode(Node node){        if(node==null)            return;        printNode(node.left);        System.out.print(node.data+"*****");        printNode(node.right);    }    public static void main(String[] args) {        int[] data = { 8, 1, 7, 8, 5, 6, 4, 8, 9, 3, 0, 2 };        BinaryTree tree=new BinaryTree();        tree.buildTree(data);        tree.print();    }}class Node {    Node left;    Node right;    int data;    public Node(int data) {        this.left=null;        this.right=null;        this.data = data;    }}

二叉排序树的定义 :

    二叉排序树(Binary Sort Tree)又称二叉查找(搜索)树(Binary Search Tree)。其定义为:二叉排序树或者是空树,或者是满足如下性质的二叉树:
①若它的左子树非空,则左子树上所有结点的值均小于根结点的值;
②若它的右子树非空,则右子树上所有结点的值均大于根结点的值;
③左、右子树本身又各是一棵二叉排序树。
  上述性质简称二叉排序树性质(BST性质),故二叉排序树实际上是满足BST性质的二叉树。

 

转载于:https://www.cnblogs.com/yunger/p/7505496.html

你可能感兴趣的文章
Java代理(三)
查看>>
intent.setFlags方法中的参数值含义
查看>>
Android GridView属性集合2
查看>>
加载静态文件,父模板的继承和扩展
查看>>
新的一个月,就这么不知不觉的来临了
查看>>
centos7.4之zabbix4.0的fping监控
查看>>
python基础知识 ~ 函数补充与反射
查看>>
xss攻击
查看>>
技术文档高频词汇
查看>>
MySQL.. ERROR! The server quit without updating PID file问题解决
查看>>
【七牛云】使用七牛云进行文件上传业务,图片处理,缩放等业务 详情查看七牛云使用说明...
查看>>
在win7-64bit环境下,boa-constructor 0.6.1 的palette面板中没有控件图标的解决方法
查看>>
python判断文件和文件夹是否存在
查看>>
软件工程个人作业1
查看>>
react native 生命周期
查看>>
数据结构-栈和队列
查看>>
array_filter
查看>>
[CC-ANUCBC]Cards, bags and coins
查看>>
Riemann-Stieltjes积分存在的充分条件(按照Tom M.Apostol的《数学分析》上的定义)
查看>>
[转]前端开发十日谈 下
查看>>