資料結構第七章查詢

2021-10-17 14:47:41 字數 2852 閱讀 2075

判斷題

1-1在雜湊中,函式「插入」和「查詢」具有同樣的時間複雜度。t

1-2當記錄個數小於雜湊表長度時,雜湊查詢平均查詢長度必然為0。f

1-3用向量和單鏈表表示的有序表均可使用折半查詢方法來提高查詢速度。f

1-4有n個數存放在一維陣列a[1…n]中,在進行順序查詢時,這n個數的排列有序或無序其平均查詢長度不同。f

1-5折半查詢法的查詢速度一定比順序查詢法快。f

1-6就平均查詢長度而言,分塊查詢最小,折半查詢次之,順序查詢最大。f

1-7hash表的平均查詢長度與處理衝突的方法無關。f

選擇題

2-1用二分查詢從100個有序整數中查詢某數,最壞情況下需要比較的次數是:

a.

7 b.

10c.

50d.

992-2

在有n(n>1000)個元素的公升序陣列a中查詢關鍵字x。查詢演算法的偽**如下所示:

k = 0;

while ( k(2分)

a.當x不在陣列中

b.

當x接近陣列開頭處 c.

當x接近陣列結尾處

d.當x位於陣列中間位置

2-3下列二叉樹中,可能成為折半查詢判定樹(不含外部結點)的是:

2-4在順序表(8,11,15,19,25,26,30,33,42,48,50)中,用二分(折半)法查詢關鍵碼值20,需做的關鍵碼比較次數為( )。

(2分)a.5

b.

4 c.

3d.62-5

順序查詢n個元素的順序表,若查詢成功,則比較關鍵字的次數最多為( )次。

(2分)

a.

n b.

n+1c.

n+2d.

n-12-6

24.輸入乙個正整數序列(53,17,12,66,58,70,87,25,56,60),按次序構造一棵二叉排序樹bs為( )。

2-7在下列查詢的方法中,平均查詢長度與結點個數無關的查詢方法是:

(1分)

a.順序查詢

b.二分法

c.

利用雜湊(雜湊)表 d.

利用二叉搜尋樹

2-8對雜湊(hash)函式h(k)= k mod m, 一般來說,m應取

(2分)

a.

素數 b.

很大的數

c.偶數

d.奇數

2-9將元素序列按順序插入乙個初始為空的、大小為13的雜湊表中。雜湊函式為:h(key)=key%13,採用線性探測法處理衝突。問:當第一次發現有衝突時,雜湊表的裝填因子大約是多少?

(3分)

a.0.54

b.0.63

c.

0.31 d.

0.62

2-10

現有長度為 11 且初始為空的雜湊表 ht,雜湊函式是 h(key)=key%7,採用線性探查(線性探測再雜湊)法解決衝突。將關鍵字序列 87,40,30,6,11,22,98,20 依次插入到 ht 後,ht 查詢失敗的平均查詢長度是:

(2分)a.4

b.5.25

c.

6 d.

6.29

2-11

設有一組關鍵字 ,雜湊函式為 h(key)=key%17,採用線性探測方法解決衝突。試在 0 到 18 的雜湊位址空間中對該關鍵字序列構造雜湊表,則成功查詢的平均查詢長度為 __

(2分)

a.0.33

b.1.17

c.1.25

d.

1.33

2-12

設有一組關鍵字 ,雜湊函式為 h(key)=key%17,採用平方探測方法解決衝突。試在 0 到 18 的雜湊位址空間中對該關鍵字序列構造雜湊表,則成功查詢的平均查詢長度為 __

(2分)

a.0.33

b.1.17

c.

1.25 d.

1.33

填空題

4-1執行以下程式,

#include

int main( );

int key=2333, flag=0, low=0, m, h=9, times=0;

while(low <= h)

else if(array[m] > key) h = m - 1;

else low = m + 1;

}if(flag == 0) printf(「not found!」);

return 0;

}程式執行結果(即:在螢幕上列印的內容)是

found-6-44-2

順序查詢演算法的平均查詢長度

在下面的線性表中

( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 )

若採用順序查詢演算法,假設各元素的檢索概率相同,則平均查詢長度為5.5

4-3二分查詢演算法的最大查詢長度

在下面的有序表中

( 15, 24, 32, 47, 50, 58, 62, 79, 83, 96 )

若採用二分查詢演算法,則最大查詢長度為4

資料結構 第七章 查詢

查詢的目的是從給定的同一型別的資料集合中,找出人們所需要的資料元素 或記錄 基本術語 記錄 record 關鍵字 keyword 主關鍵字 primarykey 次關鍵字 secondary key 查詢表 searching table 動態查詢 dynamic searching 靜態查詢 st...

資料結構 第七章 查詢技術

第七章 查詢技術 學習重點 1 折半查詢的過程及效能分析 2 二叉排序樹的插入,刪除和查詢操作 3 平衡二叉樹的調整方法 4 雜湊表的構造和查詢方法 5 各種查詢技術的時間效能及對比。學習難點 1 二叉排序樹的刪除操作 2 平衡二叉樹的調整方法 3 閒雜湊表的刪除演算法。7.1 概述 7.1.1 查...

資料結構 第七章 查詢技術

第七章 查詢技術 學習重點 1 折半查詢的過程及效能分析 2 二叉排序樹的插入,刪除和查詢操作 3 平衡二叉樹的調整方法 4 雜湊表的構造和查詢方法 5 各種查詢技術的時間效能及對比。學習難點 1 二叉排序樹的刪除操作 2 平衡二叉樹的調整方法 3 閒雜湊表的刪除演算法。7.1 概述 7.1.1 查...