什么是二叉排序樹

2022-07-19 10:09

大家好,我對二叉排序樹的概念看的有點不太懂,想讓大家?guī)臀铱纯?,盡量說的形象生動一點,謝謝!
2個回答
呵呵,所謂二叉排序樹,就是一個節(jié)點最多有兩個孩子,分別為左孩子和右孩子,

二叉排序樹(Binary Sort Tree),首先它是一棵樹,“二叉”這個描述已經(jīng)很明顯了,就是樹上的一根樹枝開兩個叉,于是遞歸下來就是二叉樹了(下圖所示),而這棵樹上的節(jié)點是已經(jīng)排好序的,具體的排序規(guī)則如下:

若左子樹不空,則左子樹上所有節(jié)點的值均小于它的根節(jié)點的值

若右子樹不空,則右字?jǐn)?shù)上所有節(jié)點的值均大于它的根節(jié)點的值

它的左、右子樹也分別為二叉排序數(shù)(遞歸定義)

從圖中可以看出,二叉排序樹組織數(shù)據(jù)時,用于查找是比較方便的,因為每次經(jīng)過一次節(jié)點時,最多可以減少一半的可能,不過極端情況會出現(xiàn)所有節(jié)點都位于同一側(cè),直觀上看就是一條直線,那么這種查詢的效率就比較低了,因此需要對二叉樹左右子樹的高度進(jìn)行平衡化處理,于是就有了平衡二叉樹(Balenced Binary Tree)

所謂“平衡”,說的是這棵樹的各個分支的高度是均勻的,它的左子樹和右子樹的高度之差絕對值小于1,這樣就不會出現(xiàn)一條支路特別長的情況。于是,在這樣的平衡樹中進(jìn)行查找時,總共比較節(jié)點的次數(shù)不超過樹的高度,這就確保了查詢的效率(時間復(fù)雜度為O(logn))

相關(guān)問答
二叉排序樹
1個回答2022-09-16 04:29
二叉樹具有以下重要性質(zhì): 性質(zhì)1 二叉樹第i層上的結(jié)點數(shù)目最多為2i-1(i≥1)。 證明:用數(shù)學(xué)歸納法證明: 歸納基礎(chǔ):i=1時,有2i-1=20=1。因為第1層上只有一個根結(jié)點,所以命題成立。 歸...
全文
什么是二叉排序樹?
1個回答2022-10-25 05:35
二叉排序樹要么是空二叉樹,要么具有如下特點: 二叉排序樹中,如果其根結(jié)點有左子樹,那么左子樹上所有結(jié)點的值都小于根結(jié)點的值;二叉排序樹中,如果其根結(jié)點有右子樹,那么右子樹上所有結(jié)點的值都大小根結(jié)點的...
全文
什么叫二叉排序樹
2個回答2022-10-26 14:35
1)若左子樹不空,則左子樹上所有結(jié)點的值均小于它的根結(jié)點的值; (2)若右子樹不空,則右子樹上所有結(jié)點的值均大于它的根結(jié)點的值; (3)左、右子樹也分別為二叉排序樹; (4)沒有鍵值相等的結(jié)點。
二叉樹和二叉排序樹有啥區(qū)別
3個回答2022-10-22 02:35
二叉樹和二叉排序樹區(qū)別為:子樹結(jié)點不同、鍵值相等不同、子樹樹型不同。 一、子樹結(jié)點不同 1、二叉樹:二叉樹的左/右子樹上所有結(jié)點的值可以大于、等于和小于它的根結(jié)點的值。 2、二叉排序樹:二叉排...
全文
排序二叉樹問題!
1個回答2022-12-17 11:35
1.排序二叉樹的特點是左子樹所有的節(jié)點值均小于根節(jié)點值,右子樹的節(jié)點值均大于根節(jié)點值,從而進(jìn)行中序遍歷的結(jié)果就是一個有序序列 2.有很多方式建立該順序序列的排序二叉樹,例如: 4 ...
全文
二叉排序樹的定義
1個回答2022-12-18 03:14
二叉排序樹或者是一棵空樹,或者是具有下列性質(zhì)的二叉樹: (1)若左子樹不空,則左子樹上所有結(jié)點的值均小于它的根結(jié)點的值; (2)若右子樹不空,則右子樹上所有結(jié)點的值均大于它的根結(jié)點的值; (3)左、...
全文
二叉排序樹定義
1個回答2023-04-25 06:15
一、定義 二叉排序樹,又叫二叉查找樹,它或者是一棵空樹;或者是具有以下性質(zhì)的二叉樹: 1. 若它的左子樹不空,則左子樹上所有節(jié)點的值均小于它的根節(jié)點的值; 2. 若它的右子樹不空,則右子樹上所有節(jié)點...
全文
什么是完全二叉樹,平衡二叉樹,二叉排序樹
1個回答2022-10-27 07:51
首先平衡二叉樹是特殊的二叉排序樹,他的結(jié)點元素間存在著偏序關(guān)系。 其次相對于一般的二叉排序樹,平衡二叉樹的左右子樹的深度差也有不超過1層的約束。 這樣使得平衡樹是同種元素序列情況下的深度最小的二叉排序...
全文
二叉排序樹和線索二叉樹有什么區(qū)別?分別什么意思?
1個回答2022-10-21 19:43
二叉排序樹本質(zhì)上是一棵普通的二叉樹,只是有左孩子的值>父母結(jié)點的值>右孩子的值這個特性。至于線索二叉樹就是每個結(jié)點加了兩個左右標(biāo)志,這樣就可以像對線性表遍歷那樣直接對二叉樹進(jìn)行遍歷而不用使用遞歸或棧或...
全文
二叉排序樹的構(gòu)造是唯一的嗎
1個回答2022-11-11 07:08
如果約定了構(gòu)造規(guī)則,給定某一個構(gòu)造的關(guān)鍵字序列,則按次序構(gòu)造出來肯定是唯一的 如果只是給定初始關(guān)鍵字,并沒有約定構(gòu)造的序列(次序),則不唯一
熱門問答