zoukankan      html  css  js  c++  java
  • 二叉数实现方法 非常绕的一个方法 递归

    //构造类

    package com.zw.binary;


    public class BinaryTree {
       
        private Node root;
        public void add(int data){
            if(root==null)
            {
                root=new Node(data);
            }
            else
            {
                root.add(data);
            }
        }
        
        public void print(){
            if(root!=null)
            {
               root.print();    
            }
        }
        
        //内部类
        class  Node{
            private int data;
            private Node left;
            private Node right;
            public Node(int data) {
                
                this.data = data;
            }
            
            public void add(int data){
                if(this.data>data)
                {
                    if(this.left==null)
                    {
                      this.left=new Node(data);    
                    }
                    else
                    {
                       left.add(data);
                    }
                    
                }
                else if(this.data<data){
                    if(this.right==null)
                    {
                      this.right=new Node(data);    
                    }
                    else
                    {
                        right.add(data);
                    }
                    
                }
            }
            
            public void print(){
                if(this.left!=null){
                    this.left.print();
                }
                System.out.print(this.data+" ");
                if(this.right!=null){
                    this.right.print();
                }
            }
            
        }

    }

    //測试类

    package com.zw.binary;

    public class BinaryTreeDemo {

        /**
         * @param args
         */
        public static void main(String[] args) {
            BinaryTree bt=new BinaryTree();
            bt.add(8);
            bt.add(3);
            bt.add(1);
            bt.add(6);
            bt.add(14);
            bt.add(4);
            bt.add(10);
            bt.add(7);
            bt.add(13);
            bt.print();
        }

    }

    //输出结果

    1 3 4 6 7 8 10 13 14


  • 相关阅读:
    linux下查找文件并按时间顺序排序的方法
    动态口令(OTP)认证技术概览
    [转]关于OpenSSL支持USBKEY证书的尝试
    关于CSP通过CpSetKeyParam存入证书相关问题
    Windows AntiDebug Reference
    cryptapi制作证书
    [转]国密SM3杂凑算法与实现
    [转]国密SM2非对称算法与实现
    [转]国密SM4对称算法实现说明(原SMS4无线局域网算法标准)
    证书的申请过程(usbkey)
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/6916229.html
Copyright © 2011-2022 走看看