資料結構作業19—靜態查詢表與二叉排序樹(選擇題)
2-1將{ 5, 11, 13, 1, 3, 6 }依次插入初始為空的二叉搜尋樹。則該樹的後序遍歷結果是:(3分)
- A.1, 3, 11, 6, 13, 5
- B.1, 3, 5, 6, 13, 11
- C.3, 1, 6, 13, 11, 5
- D.3, 1, 5, 6, 13, 11
作者: 何欽銘
單位: 浙江大學
2-2若一棵二叉樹的前序遍歷序列是{ 4, 2, 1, 3, 6, 5, 7 },中序遍歷序列是{ 1, 2, 3, 4, 5, 6, 7 },則下列哪句是錯的?(3分)
- A.2是5的父結點
- B.這是一棵二叉搜尋樹
- C.所有的奇數都在葉子結點上
- D.這是一棵完全二叉樹
作者: 何欽銘
單位: 浙江大學
2-3將{ 32, 2, 15, 65, 28, 10 }依次插入初始為空的二叉搜尋樹。則該樹的前序遍歷結果是:(3分)
- A.32, 2, 10, 15, 28, 65
- B.32, 2, 15, 10, 28, 65
- C.10, 28, 15, 2, 65, 32
- D.2, 10, 15, 28, 32, 65
作者: 陳越
單位: 浙江大學
2-4若二叉搜尋樹是有N個結點的完全二叉樹,則不正確的說法是:(1分)
- A.中位值結點在根結點或根的左子樹上
- B.最大值一定在葉結點上
- C.最小值一定在葉結點上
- D.所有結點的平均查詢效率是O(logN)
作者: 何欽銘
單位: 浙江大學
2-5在有n(n>1000)個元素的升序陣列A中查詢關鍵字x。查詢演算法的虛擬碼如下所示:
k = 0; while ( k<n 且 A[k]<x ) k = k+3; if ( k<n 且 A[k]==x ) 查詢成功; else if ( k-1<n 且 A[k-1]==x ) 查詢成功; else if ( k-2<n 且 A[k-2]==x ) 查詢成功; else 查詢失敗;
本演算法與二分查詢(折半查詢)演算法相比,有可能具有更少比較次數的情形是:(2分)
- A.當x位於陣列中間位置
- B.當x接近陣列結尾處
- C.當x接近陣列開頭處
- D.當x不在陣列中
作者: DS課程組
單位: 浙江大學
2-6用二分查詢從100個有序整數中查詢某數,最壞情況下需要比較的次數是:(2分)
- A.50
- B.99
- C.10
- D.7
作者: DS課程組
單位: 浙江大學
2-7下列二叉樹中,可能成為折半查詢判定樹(不含外部結點)的是: (4分)
- A
- B
- C
- D
作者: 考研試卷
單位: 浙江大學
2-8對二叉搜尋樹進行什麼遍歷可以得到從小到大的排序序列? (1分)
- A.層次遍歷
- B.中序遍歷
- C.後序遍歷
- D.前序遍歷
作者: DS課程組
單位: 浙江大學
2-9若一棵二叉樹的後序遍歷序列是{ 1, 3, 2, 6, 5, 7, 4 },中序遍歷序列是{ 1, 2, 3, 4, 5, 6, 7 },則下列哪句是錯的?(3分)
- A.7是5的父結點
- B.這是一棵二叉搜尋樹
- C.2是1和3的父結點
- D.這是一棵完全二叉樹
作者: 陳越
單位: 浙江大學
2-10已知8個數據元素為(34,76,45,18,26,54,92,65),按照依次插入結點的方法生成一棵二叉搜尋樹後,最後兩層上的結點總數為: (2分)
- A.2
- B.4
- C.3
- D.1
作者: DS課程組
單位: 浙江大學
2-11若二叉搜尋樹是有N個結點的完全二叉樹,則不正確的說法是:(1分)
- A.中位值結點在根結點或根的左子樹上
- B.最小值一定在葉結點上
- C.最大值一定在最後一層
- D.平均查詢效率是O(logN)
作者: DS課程組
單位: 浙江大學
2-12下列敘述正確的是()。 (2分)
- 雖然給出關鍵字序列的順序不一樣,但依次生成的二叉搜尋樹卻是一樣的。
- 在二叉搜尋樹中插入一個新結點,總是插入到最下層,作為新的葉子結點。
- 二叉樹中除葉結點外, 任一結點X,其左子樹根結點的值小於該結點(X)的值;其右子樹根結點的值≥該結點(X)的值,則此二叉樹一定是二叉搜尋樹。
- 在任意一棵非空二叉搜尋樹,刪除某結點後又將其插入,則所得二叉搜尋樹與刪除前原二叉搜尋樹相同。
作者: 嚴冰
單位: 浙江大學城市學院
2-13已知一個長度為16的順序表L,其元素按關鍵字有序排列。若採用二分查詢法查詢一個L中不存在的元素,則關鍵字的比較次數最多是: (2分)
- A.7
- B.6
- C.5
- D.4
作者: DS課程組
單位: 浙江大學