資料結構實踐專案 查詢(一)

2021-09-23 17:58:13 字數 1085 閱讀 1243

本文是[資料結構基礎系列(8):查詢]課程的第一組實踐專案。

本文針對:

0801 查詢問題導學

0802 線性表的順序查詢

0803 線性表的折半查詢

0804 索引儲存結構

0805 分塊查詢

0806 二叉排序樹

0807 二叉排序樹(續)

0808 平衡二叉樹

[參考(部分)] [參考(1)]

1、對於a[0..10]有序表

(1)用二分查詢法查詢 90時,需進行多少次查詢可確定成功?

(2)當查詢47時需進行多少次查詢可確定成功?

(3)查詢100時,需進行多少次查詢才能確定不成功?

(4)求成功和不成功時的平均查詢長度。

(5)構造對於這個序列的判定樹,並再求成功和不成功時的平均查詢長度。

2、現給出乙個分塊有序的資料表,每塊中元素的個數s=8,其中的資料有:

22,4,23,11,20,2,15,13,30,45,26,34,29,35,26,36,55,98,56,74,61,90,80,96,127,158,116,114,128,113,115,102,184,211,243,188,187,218,195,210,279,307,492,452,408,361,421,399,856,523,704,703,697,535,534,739

(1)構造索引表,並畫出索引儲存結構;

(2)請描述查詢61的過程,需要多少次比較;

(3)請描述查詢739的過程,需要多少次比較;

(4)請描述查詢200的過程,經過多少次比較後才能確定找不到。

3、將整數序列中的數依次插入到一棵空的二叉排序樹中,構造出相應的二叉排序樹,要求用圖形給出構造過程。

4、將整數序列依次插入到一棵空的平衡二叉樹中,試構造相應的平衡二叉樹,要求用圖形給出構造過程。

【專案2 - 二叉樹排序樹中查詢的路徑】

設計乙個演算法,輸出在二叉排序中查詢時查詢某個關鍵字經過的路徑。

[參考解答]

【專案3 - 是否二叉排序樹?】

設計乙個演算法,判斷給定的二叉樹是否是二叉排序樹。

[參考解答]

資料結構實踐專案 查詢(一)

本文是 資料結構基礎系列 8 查詢 課程的第一組實踐專案。本文針對 0801 查詢問題導學 0802 線性表的順序查詢 0803 線性表的折半查詢 0804 索引儲存結構 0805 分塊查詢 0806 二叉排序樹 0807 二叉排序樹 續 0808 平衡二叉樹 參考 部分 參考 1 1 對於a 0....

資料結構實踐專案 查詢(二)

本文是 資料結構基礎系列 8 查詢 課程的第二組實踐專案。參考解答 1 給定序列 1 建立對應的3階b 樹b,請畫出構造過程 2 從b中分別刪除關鍵字為8和1的節點,畫出其過程 2 建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11 1 採用線性探查法解決衝突,請寫出雜湊表...

資料結構實踐專案 排序

本文是 資料結構基礎系列 排序 課程的實踐專案。本文針對 1.排序問題及導學 2.插入排序之直接插入排序 3.插入排序之希爾排序 4.交換排序之氣泡排序 5.交換排序之快速排序 6.選擇排序之直接選擇排序 7.選擇排序之堆排序 8.歸併排序 9.簡單的計數排序 10.基數排序 11.各種排序的比較 ...