二叉樹演算法的排序規則:
1、選擇第乙個元素作為根節點
2、之後如果元素大於根節點放在右子樹,如果元素小於根節點,則放在左子樹
3、最後按照中序遍歷的方式進行輸出,則可以得到排序的結果(左->根->右)
二叉樹演算法的核心類,此類只提供了新增和列印輸出的方法
package com.lym.binarytree;
/** * 二叉樹演算法的排序規則:
* 1、選擇第乙個元素作為根節點
* 2、之後如果元素大於根節點放在右子樹,如果元素小於根節點,則放在左子樹
* 3、最後按照中序遍歷的方式進行輸出,則可以得到排序的結果(左->根->右)
* * @author administrator
* */
public class binarytree else
} // 輸出節點,提供外部訪問
public void print()
} // 樹枝節點
class node
// 新增節點
public void addnode(int data) else
} else if (this.data <= data) else
}} // 輸出所有節點
//中序遍歷
public void printnode()
system.out.print(this.data + " ");//輸出語句放最後就是後續遍歷
if (this.rightnode != null)
} }}
二叉樹的測試類
package com.lym.binarytree;
/** * 二叉樹測試類
* * @author administrator
* */
public class binarytreedemo
}
二叉樹演算法(java)
為什麼實用二叉樹 一,在有序陣列中插入刪除資料太慢 1插入或者刪除一條資料會移動後面的所有資料 二,在鍊錶中查詢資料太慢 2查詢只能從頭或者尾部一條一條的找 用樹解決問題 有沒有一種插入和刪除像鍊錶那麼快,查詢可以向有序陣列一樣查得快那樣就好了。數實現了這些特點,稱為了最有意思的資料結構之一 樹的術...
java 二叉樹實現演算法
package zxx.new 二叉樹演算法實現 author zhaoxin version public class binarytree public binarytree object objects public boolean insert object o else else if c...
二叉樹相關演算法(Java)
二叉樹的非遞迴遍歷 其他相關演算法 輸入一顆二叉樹的根結點,求該樹的深度。從根結點到葉結點依次經過的結點 含根,葉子結點 形成一條路徑,最長路徑的長度為樹的深度 public int treedepth treenode root int left treedepth root.left int r...