一、概念
排序二叉樹是一種特殊結構的二叉樹,通過它可以非常方便的對樹中所有節點進行排序和檢索。排序二叉樹要麼是一顆空的二叉樹,要麼就是具有下列性質的二叉樹。
1、若他的左子樹不為空,則左子樹上所有節點的值均小於它的根節點的值。
2、若它的右子樹不為空,則右子樹上所有節點的值均大於它的根節點的值。
3、它的左、右子樹也分別為排序二叉樹。
4、二叉樹節點的值不允許重複。
二、前驅:該節點的左子樹的最大節點
後繼:是該節點的右子樹的最小節點
三、二叉查詢樹插入
四、二叉查詢樹的刪除
1、如果刪除的是葉子節點的話就直接將其從父節點刪除,把物件設為null
2、被刪除節點p只有左子樹,將p的左子樹pl新增成p的父節點的右子樹即可;被刪除節點 p只有右子樹,將p的右子樹pl新增成p的父節點的左子樹即可。
3、用前驅後繼都可以
二叉樹,排序二叉樹
說到二叉樹,這可是資料結構裡面的非常重要的一種資料結構,二叉樹是樹的一種,本身具有遞迴性質,所以基於二叉樹的一些演算法很容易用遞迴演算法去實現。作為一種非線性結構,比起線性結構還是相對複雜的,很多人甚至看不懂演算法的意思,不能理解。其實一開始接觸這些東西還是挺暈的,不過你多看幾遍,上機實現可能你就會...
排序二叉樹or搜尋二叉樹or查詢二叉樹
排序二叉樹,搜尋二叉樹,查詢二叉樹都是乙個意思,只是叫法不同而已。下面的文章中我們統稱為排序二叉樹。本文主要是針對高中資訊學,因此其中不涉及到指標,所有需要用指標的地方都直接使用陣列進行模擬。排序二叉樹定義 1 若左子樹不空,則左子樹上所有結點的值均小於或等於它的根結點的值 2 若右子樹不空,則右子...
排序二叉樹or搜尋二叉樹or查詢二叉樹
排序二叉樹,搜尋二叉樹,查詢二叉樹都是乙個意思,只是叫法不同而已。下面的文章中我們統稱為排序二叉樹。本文主要是針對高中資訊學,因此其中不涉及到指標,所有需要用指標的地方都直接使用陣列進行模擬。排序二叉樹定義 1 若左子樹不空,則左子樹上所有結點的值均小於或等於它的根結點的值 2 若右子樹不空,則右子...