1. 程式人生 > 其它 >資料結構之二叉查詢樹

資料結構之二叉查詢樹

二叉查詢樹

定義:樹是n(n>=0)個節點的有限集。二叉樹是另一種樹型結構,特點是每個節點最多有2個子節點,並且二叉樹的子樹有左右之分。

看上圖,比如新增2節點的時候,發現2比3小,所以放到左側樹中,又發現比1大,所以最終在1的右節點處。

建立一個二叉查詢樹的類:

    /// <summary>
    /// 二叉查詢樹類  
    /// IComparable:使用此進行限制是為了實現 兩個實體類之間按>,=,<進行比較
    /// </summary>
    /// <typeparam name="E"></typeparam>
class BST<E> where E : IComparable<E> { /// <summary> /// 節點類 /// </summary> private class Node { public E e; public Node left; public Node right; public Node(E e) {
this.e = e; left = null; right = null; } } private Node root; private int N; public BST() { root = null; N = 0; } public int Count { get {
return N; } } public bool IsEmpty { get { return N == 0; } } }

看下圖,需要新增一個節點的時候,