• <nav id="cwumo"><code id="cwumo"></code></nav>
  • <menu id="cwumo"><strong id="cwumo"></strong></menu>

    Java認證輔導:Java實現二叉樹遍歷算法

    時間:2024-10-21 02:45:41 JAVA認證 我要投稿
    • 相關推薦

    Java認證輔導:Java實現二叉樹遍歷算法

      Java實現二叉樹遍歷算法

      在JAVA中實現二叉樹,程序如下:

      //********************************************************************

      //filename: BinaryTreeTest.java

      //purpose: test a binarytree with java

      //date: 2002/12/18

      //author: flyfan

      //ver: 0.1

      //********************************************************************

      public class BinaryTreeTest

      {

      public static void main(String args[])

      {

      BinaryTreeTest b=new BinaryTreeTest();

      int data[]={12,11,34,45,67,89,56,43,22,98};

      BinaryTree root =new BinaryTree(data[0]);

      System.out.print(“二叉樹的中的數據:  ”);

      for(int i=1;i《data.length;i++)

      {

      root.insertTree(root,data[i]);

      System.out.print(data[i-1]+“;”);

      }

      System.out.println(data[data.length-1]);

      int key=Integer.parseInt(args[0]);

      if(b.searchkey(root,key))

      {

      System.out.println(“找到了:”+key);

      }

      else

      {

      System.out.println(“沒有找到:”+key);

      }

      }

      public boolean searchkey(BinaryTree root, int key)

      {

      boolean bl=false;

      if(root==null)

      {

      bl=false;

      return bl;

      }

      else if(root.data==key)

      {

      bl=true;

      return bl;

      }

      else if(key》=root.data)

      {

      return searchkey(root.rightpoiter,key);

      }

      return searchkey(root.leftpoiter,key);

      }

      }

      class BinaryTree

      {

      int data;

      BinaryTree leftpoiter;

      BinaryTree rightpoiter;

      BinaryTree(int data)

      {

      this.data=data;

      leftpoiter=null;

      rightpoiter=null;

      }

      public void insertTree(BinaryTree root, int data)

      {

      if(data》=root.data)

      {

      if(root.rightpoiter==null)

      {

      root.rightpoiter=new BinaryTree(data);

      }

      else

      {

      insertTree(root.rightpoiter,data);

      }

      }

      else

      {

      if(root.leftpoiter==null)

      {

      root.leftpoiter=new BinaryTree(data);

      }

      else

      {

      insertTree(root.leftpoiter,data);

      }

      }

      }

      }

      //end

      講解:上述各序小,但層次分明,結構嚴謹,如果有數據庫結構知識與C語文能力的JAVA初學者一看就明白,二個方法如同C語文中的函數,一個尋找關鍵字--searchkey 另一個是插入一個結點:insertTree 而class BinaryTree 如同一個C語言中的共同體。

      另外這是一個完全的先序遍歷二叉樹的語法。先根結點,再左結點,如無再右結點,如些加歸至搜索完畢。

      運行命令行:java BinaryTreeTest intNumber(一個整數)

    【Java認證輔導:Java實現二叉樹遍歷算法】相關文章:

    JAVA認證簡介03-19

    SUN JAVA認證介紹12-18

    JAVA認證考試細則03-19

    java認證考試介紹03-19

    JAVA認證開源技術:關于Java的對象equals方法03-04

    sun java認證報考指南03-08

    JAVA認證考試費用03-19

    java認證考試科目設置03-19

    怎樣獲得Sun Java認證03-18

    日韩激情