一、本章思維導圖(線性表、樹表、雜湊表)
二、pta實踐及作業
【二分查詢變形】
【hashing】
2、【二分查詢變形(面試)】
變形方向:
1)算大於key的最小值、小於key的最大值
2)形成分割線,一邊全部大於key值,一邊全部小於key值
3、【hashing】
i 重要**:
1)判斷是否為素數(質數),若不是,則要找到大於m值(某個值)的最小素數。注意1不是素數,2是最小素數。
2)建立雜湊表,如何判斷某個key能否插入表中
ii 我犯的錯誤:
1)處理衝突的公式弄錯。應該是 hi = (h(key)+di)%m(m是表長),而不是 hi = (key+di)%m
2)判斷是否是素數及找到大於m值的最小質數時,忽略了1不是素數,2是最小素數的問題。
3)在判斷某個key能否插入表中時,最初的思路是如果di (即j*j) 大於等於原來的h(key),那就跟第一輪(di < h(key)時)一樣了(感覺上),於是用了:for( int j = 1; ; j++ )永真迴圈 + if ( j*j >= h(key) )判斷能否加入到表中,但是這個方法不行。
4)優化了一些地方。
一開始:存好資料再輸出下標-----改進:邊判斷邊輸出,第一輪輸入先輸出乙個下標,後面輸入先輸出空格後下標。減少了**量。
三、其他收穫
1、準確率和召回率(precision & recall)
解釋:準確率和召回率是廣泛用於資訊檢索和統計學分類領域的兩個度量值,用來評價結果的質量。
其中精度是檢索出相關文件數與檢索出的文件總數的比率,衡量的是檢索系統的查準率;
召回率是指檢索出的相關文件數和文件庫中所有的相關文件數的比率,衡量的是檢索系統的查全率。
一般來說,precision就是檢索出來的條目(比如:文件、網頁等)有多少是準確的,recall就是所有準確的條目有多少被檢索出來了。
1. 正確率 = 提取出的正確資訊條數 / 提取出的資訊條數
2. 召回率 = 提取出的正確資訊條數 / 樣本中的資訊條數
2、順序查詢中「哨兵」的使用
第七章學習小結
第七章的內容是查詢。查詢可以分為3種。分別是線性表查詢 樹表查詢 雜湊表查詢。1 線性表查詢 線性表查詢主要介紹了順序查詢和折半查詢這兩種方法。1 順序查詢區別於上學期學的方法,設定了哨兵,採用從後往前開始查詢的方法,將時間複雜度縮短了一倍。asl n 1 2 2 折半查詢,其實也叫二分查詢,原理是...
第七章學習小結
查詢的基本概念 查詢表 同一型別的資料元素 記錄 構成的集合。靜態查詢表 對查詢表只進行查詢操作。動態查詢表 不僅進行查詢操作,而且在查詢過程中還伴隨著插入 查詢的資料元素不在表中時 刪除某個資料元素的操作。關鍵字 key 是資料元素 或記錄 的某個資料項的值,用它可標識 識別 乙個資料元素 或記錄...
第七章小結
第七章我們主要是學習了查詢,是在前面的基礎上對查詢進行優化。一 基本概念 查詢表 由同一型別的資料元素或記錄構成的集合。完全鬆散 關鍵字 根據給定的某個值,在查詢表中確定乙個其關鍵字等於給定值的記錄或資料元素。動態查詢表和靜態查詢表 若在查詢的同時對錶做修改操作 如插入或刪除 則相應的表稱為動態查詢...