資料結構之二叉查詢樹
阿新 • • 發佈:2021-08-28
二叉查詢樹
定義:樹是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; } } }
看下圖,需要新增一個節點的時候,