【查找算法】二叉排序樹查找法(二)

上篇文章介紹了關於二叉排序樹的查找算法,我們知道,二叉排序樹雖然能夠提高查找效率,併爲頻繁的插入、刪除操作提供便利,但如果構建不當,即:構建出的二叉排序樹不"平衡",也會大大降低查找效率。
爲此,我們需要將"不平衡"的二叉排序樹進行"平衡化"處理。

本篇文章將介紹平衡二叉樹。

何爲平衡二叉樹?

先看定義:

平衡二叉樹又稱AVL樹,一棵平衡二叉樹可能爲空樹,也可能爲具有下列性質的二叉排序樹:

  1. 左子樹和右子樹的高度之差的絕對值小於等於1
  2. 左子樹和右子樹也是平衡二叉排序樹

通常爲了方便,我們會給每個結點附加一個數字,給出該結點左子樹與右子樹的高度差,這個數字稱爲結點的平衡因子。

平衡

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章