本文是[資料結構基礎系列(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.各種排序的比較 ...