關於二叉排序樹查詢的問題,二叉排序樹的查詢問題!

2021-08-06 01:17:40 字數 2405 閱讀 7235

1樓:

選d,首先查詢46結點:46>35,所以到46結點的左子樹繼續查詢:36>35,繼續到36結點左子樹查詢:

18<35,到18結點的右子樹查詢:28<35,到28結點的右子樹查詢:35=35,結束。

其餘答案不對。如b中,查詢了36結點之後應該到36的左子樹去查詢的,所以往後的所有結點應該要比36小,然而46在36結點之後,不可能出現這種情況。

2樓:匿名使用者

a選項的查詢比較路徑是這樣的28\

36/18\

46/35該選項,若說它是公升序排序樹,18在右子樹上,若說是降序排序樹,則顯然不是。

b選項的查詢比較路徑是這樣的18\

36/28\

46/35這裡看的是以36為根的子樹,棄選它道理同上。36的右左子樹上既有28,又有46、35。

c選項的查詢比較路徑是這樣的48/

28/18\

36/35則以28為根的子樹,它的左子樹上既有18又有36、35。所以棄選。

選項d的查詢比較路徑如下46/

36/18\

28\35完全符合條件,所以正確選項是d。

3樓:匿名使用者

這個應該是選擇b吧。就二叉排序樹而言,其特徵有3點,(1)若左子樹不空,則左子樹上所有結點的值均小於它的根結點的值; (2)若右子樹不空,則右子樹上所有結點的值均大於它的根結點的值; (3)左、右子樹也分別為二叉排序樹;根據這個特點可排除acd。比如說a,第一次比較的數是28,但是關鍵字是35,那麼應該遍歷28的右子樹(易知28為根節點),那麼接下來要遍歷,或者說要比較的數應該比28要大(根據二叉排序樹的第2個特點),但是a選項中後面出現了18,故a錯了。

cd選項也同理也錯了。只有b選項正確。

二叉排序樹的查詢問題!

4樓:匿名使用者

二叉排序樹最重要的性質:對於每個節點a的左子樹的根al的值一定比該節點值小,節點a右子樹的根節點ar的值一定比a的值大,因此可以推出==>乙個節點的左子樹的所有節點的值都比它的值要小,乙個節點的右子樹的所有節點的值都比它大!對上面的這個序列進行分析,202是925的左子樹根,所以202.

911.240.912.

245.363這些節點都必須要比925小,911是202右子樹的根,所以911.240.

912.245.363都要比202大,240是911的左子樹根,所以240.

912.245.363都要比911小才行,但是912比911要大是吧?

所以912不應該是911左子樹的節點,所以錯了唄!應該夠清楚了吧?再不懂就沒轍了!

記得給分哈^.^

二叉排序樹的查詢效率跟什麼有關

5樓:匿名使用者

跟節點沒什麼關係吧。跟樹的深度關係最密切,之後樹的形狀也會影響查詢效率。

6樓:

跟樹的深度以及樹的形狀有關係。

資料結構實驗,求用c語言編乙個二叉排序樹的建立和查詢的程式

7樓:匿名使用者

#include

typedef struct np node;

node *create(void)

node *t(node *a,int d)else if (d>=a->dat)

else if (ddat)

return a;

}void inorder(node *r)}int ser(node *so,int a)int main(int argc, char* argv)fclose(fp);

inorder(bst); /*輸出二叉排序樹*/putchar('\n');

scanf("%d",&i); /*輸入需要查詢的數字*/if (ser(bst,i)) printf("yes"); /*如果找到,則輸出yes,否則輸出no*/

else printf("no");

return 0;

}//-

資料結構:二叉查詢樹的查詢效率與什麼有關???

8樓:匿名使用者

根據你的答案 和資料結構用c語言描述(高教出版社)200頁 最下面首句 二叉樹查詢與二叉樹形態有關所以選 b

9樓:匿名使用者

二叉查詢樹還能有第二種樹型麼?不太理解

10樓:匿名使用者

這和樹型無關吧 深度有關,果斷選a了

11樓:匿名使用者

偶當時選的是b這題目出的有問題 不必深究

12樓:匿名使用者

這有什麼好討論的啊你們不會以為查詢樹都是平衡樹那樣吧

如何判斷二叉樹是滿二叉樹怎麼判斷一棵二叉樹是否是完全二叉樹呢?

完全二叉樹的定義 深度為k,有n個結點的二叉樹當且僅當其每乙個結點都與深度為k的滿二叉樹中編號從1至n的結點一一對應時,稱為完全二叉樹。特點 葉子結點只可能在層次最大的兩層上出現 對任一結點,若其右分支下子孫的最大層次為l,則其左分支下子孫的最大層次必為l 或l 1 滿二叉樹 一棵深度為k,且有2的...

vb中二叉樹問題,vb中二叉樹的度結點深度之間有什麼關係

二叉樹的bai結點一共du 有三種型別 度為2的結zhi點,度dao為1的結點,葉子結點。而三種回結點之間又存在答以下關係 不妨用n0 n1 n2分別代表葉子結點 1度的結點和2度的結點的數量 n2 1 n0 所以,總結點數m n0 n1 n2 在本題中 已經n0 70,n1 80 m 70 80 ...

二叉樹是樹的特例嗎,二叉樹是樹的特例嗎

什麼叫二叉樹的度?帶你了解它的特點 不是。儘管樹和二叉樹的概念之間有許多的類似,但它們是兩個不同的資料結構。因為從定義來看 二叉樹既不是只有兩個子樹的樹,也不是最多只有兩個子樹的樹。樹和二叉樹最主要的區別是 二叉樹中結點的子樹要區分左子樹和右字樹,即使在結點只有一棵子樹的情況下也要明確指出該子樹是左...