求一个遍例树的例子,谢谢!

解决方案 »

  1.   

    通过循环自己方法的方法就叫递归,意思就是你的函数在使用过程种调用自己来处理同样方法以达到目录显示.
    while(条件){
      if(符合条件){
        循环自己
      }else{ 继续}
    }
      

  2.   

    多的话用ajax技术,csdn右侧菜单就是
      

  3.   

    static void InOrder(BinNode T)

          if(T!=null) { // 如果二叉树非空
           InOrder(T.getLchild());
           System.out.print(T.getData()); // 访问结点:也可以用其它的方法访问它
           InOrder(T.getRchild());
          }
    } // InOrder 
    中序遍历二叉树,若要改为先序或后序,改一下访问节点的所处位置即可~
      

  4.   

    class TreeNode //

        TreeNode rightChild = null,leftChild = null;
        int value; 
      
        TreeNode() 
        { 
            value = 0; 
        } 
      
        TreeNode(int arg) 
        { 
            value = arg; 
        } 
    }class TREE 

        TreeNode root=null; 
        
        TREE() 
        { 
            root=null; 
        } 
      
        public void AddNode(int num) 
        { 
            AddNode(num,root); 
        }     private void AddNode(int num,TreeNode baseNode) 
        { 
            if(root==null) 
                root = new TreeNode(num); 
            else 
            { 
                if(num<=baseNode.value){ 
                    if(baseNode.leftChild!=null) 
                        AddNode(num,baseNode.leftChild); 
                    else   
                        baseNode.leftChild=new TreeNode(num); 
                }
                else {
                    if(baseNode.rightChild!=null) 
                        AddNode(num,baseNode.rightChild); 
                    else   
                        baseNode.rightChild=new TreeNode(num); 
                } 
            } 
        }    public void postOrder(TreeNode T){ 
            if(T!=null){ 
                System.out.println(T.value); 
                postOrder(T.leftChild); 
                postOrder(T.rightChild); 
            } 
        }     public void inOrder(TreeNode T)
        { 
            if(T!=null) { 
                inOrder(T.leftChild);
                System.out.println(T.value);
                inOrder(T.rightChild);
            }
        }     public void lastOrder(TreeNode T)
        { 
            if(T!=null) { 
                lastOrder(T.leftChild);
                lastOrder(T.rightChild);
                System.out.println(T.value);
            }
        } 

    public class TestTree{ 
        public static void main(String[] args){ 
            TREE t=new TREE(); 
            t.AddNode(30);
            t.AddNode(40);
            t.AddNode(15);
            t.AddNode(45);
            t.AddNode(8);
            System.out.println("postOrder:");
            t.postOrder(t.root);
            System.out.println("inOrder:");
            t.inOrder(t.root);
            System.out.println("lastOrder:");
            t.lastOrder(t.root);
        } 
    }
      

  5.   

    class TreeNode //结点类型
    class TREE //树类型
      
    public void AddNode(int num) //按中序遍历的大小顺序插入数据其后三个方法分别是先/中/后根序遍历应该很容易看懂的,就不多写注释了哈~