二分搜尋樹基礎
阿新 • • 發佈:2018-12-17
一、二分搜尋樹的優勢
(1)key可以自己定義
比如用String來作為key來實現一個查詢表,而陣列只能用索引。
(2)對比其他陣列形式
(3)高效查詢,刪除,插入資料(O(logN))
二、二分搜尋樹的基本性質
(1)是一棵二叉樹
(2)不一定是完全二叉樹,因而資料儲存不適宜用陣列(稀疏),常用自定義節點資料結構。
三、二分搜尋樹的基本資料結構定義
(1)Node節點
public class Node { int key; int value; Node leftNode; Node rightNode; public Node(int key, int value) { this.key = key; this.value = value; this.leftNode = null; this.rightNode = null; } }
(2)二分查詢樹的資料結構定義
public class BinarySearchTree { private int count; private Node root; //根節點 public BinarySearchTree() { this.count = 0; this.root = null; } public int size(){ return this.count; } public boolean isEmpty(){ return this.count == 0; } }