20172301 《程序設計與數據結構》課堂測試修改報告
課程:《程序設計與數據結構》
班級: 1723
姓名: 郭愷
學號: 20172301
實驗教師:王志強老師
測試日期:2018年10月19日
必修/選修: 必修php
題目內容
測試過程及結果
- 畫出散列查找(鏈地址法)的散列表和成功平均查找長度
測試過程當中遇到的問題和解決過程
- 問題1:散列表的線性探查法對於數組末尾衝突操做如何解決?
- 問題1解決方案:
- 首先,注意一點是,散列表是根據序列順序依次填入地址的 ,並不是是根據排序順序,這是我犯得錯誤一。
- 而後,若是若是說地址末尾有衝突,那麼應該是Hi = (H(K) + di) % 11,那麼應該仍是從索引0開始日後進行填充,直到數組滿的時候,而不是申請新的空間,這是個人錯誤二。
- 那麼,若是數組滿了怎麼辦?
- 我想,這時不單單要擴容數組大小,同時應該擴大m的值。否則,序列一樣仍是在那個數組大小中循環。
其餘(感悟、思考等)
對於散列查找中的線性探查法解決衝突的過程還不是特別熟悉。致使我對於數組末尾衝突的理解有問題。這只是一個細節,卻影響到整個ASL的計算。而且散列表並非按照序列順序填入的,致使序列地址也存在問題。這是之後應該注意的。web
參考資料