zoukankan      html  css  js  c++  java
  • 二叉树,添加,查找

    public class Tree {
        
        TreeNode last = null;
        TreeNode root = null;
        
        
        public Tree(int value){
            root = createNode(value);
        }
            
        //结构
         static class TreeNode{
             int data;
             TreeNode left;
             TreeNode right; 
         }
         
         //查找结点
         public boolean searchTreeNode(int key,TreeNode tree){
             if(tree == null){
                 return false;
             }
             if(tree.data == key){
                 return true;
             }else if(tree.data > key){
                 last = tree;
                 searchTreeNode(key,tree.left);
             }else if(tree.data < key){
                 last = tree;
                 searchTreeNode(key,tree.right);
             }
             return false;
         }
         
         
         //添加节点
         public void addTreeNode(int key){
             if(!searchTreeNode(key,root)){
                 TreeNode tree = createNode(key);
                 if(key < last.data){
                     last.left = tree;
                 }else if(key>last.data){
                     last.right = tree;
                 }
             }
             last = null;
         }
         
         //遍历
         public void iterate(TreeNode node){
            if(node ==null){
                return;
            }
            System.out.println(node.data);
            iterate(node.left);
            iterate(node.right);
         }
        
         public TreeNode createNode(int key){
            TreeNode tree = new TreeNode();
            tree.data = key;
            return tree;
         }
         
         public void removeNode(int key){
             
         }
         
         public static void main(String[] args){
             Tree tree = new Tree(4);
             tree.addTreeNode(5);
             tree.addTreeNode(6);
             tree.addTreeNode(3);
             tree.addTreeNode(7);
             tree.addTreeNode(8);
             tree.addTreeNode(9);
             tree.iterate(tree.root);
         }
         
    }
  • 相关阅读:
    团队作业—第二阶段08
    团队作业—第二阶段07
    java--Map使用实现模拟斗地主洗牌发牌
    课程作业08 MVC框架具体使用
    课程作业 MVC框架
    课堂作业06_23种设计模式
    课堂作业05 《6种质量属性战术》
    课堂作业04
    课堂作业03
    架构漫谈阅读笔记
  • 原文地址:https://www.cnblogs.com/JimmyXie/p/3709827.html
Copyright © 2011-2022 走看看