導航:首頁 > 源碼編譯 > 查找演算法有序存儲

查找演算法有序存儲

發布時間:2023-07-26 10:03:11

A. 數據結構與演算法順序查找和折半查找

1.順序查找
又稱線性查找,主要用於在線性表中進行查找。

一般線性表的順序查找:
從線性表的一端開始,逐個檢查關鍵字滿足給定條件。若查找到某個元素的關鍵字滿足給定條件則查找成功,返回該元素在線性表中的位置。若已經查找到表的另一端,但還沒有查找到符合給定條件的元素,則返回查找失敗的信息。

有序表的順序查找:
假設表L是按關鍵字從小到大排列的,查找的順序是從前往後,待查找元素的關鍵字為key。當查找到第i個元素時,發現第i個元素對應的關鍵字小於key,但第i+1個元素對應的關鍵字大於key,這時就可以返回查找失敗的信息。

2.折半查找
又稱二分查找,它僅適用於有序的順序表

首先將給定值key與表中間位置的元素比較,若相等,則查找成功,返回該元素的存儲位置。若不等,則所需查找的元素只能在中間元素以外的前半部分或後半部分。然後在縮小的范圍內繼續進行同樣的查找,如此重復,直到找到為止。或確定表中沒有所需要查找的元素,則查找不成功,返回查找失敗的信息。

3.分塊查找
又稱按索引順序查找,它吸取了順序查找和折半查找各自的優點,既有動態結構,又適於快速查找

將查找表分為若乾子塊。塊內的元素可以無序,但塊之間是有序的,第一個塊中的最大關鍵字小於第二個塊中的所有記錄的關鍵字,以此類推。再建立一個索引表,索引表中的每個元素含有各塊的最大關鍵字和各塊中的第一個元素的地址,索引表按關鍵字有序排列

閱讀全文

與查找演算法有序存儲相關的資料

熱點內容
程序員和產品的日常 瀏覽:438
命令行運行scala 瀏覽:808
python怎麼交叉輸出比例 瀏覽:498
net程序員要求 瀏覽:316
pythondiaoyongjava 瀏覽:639
如何製作存儲伺服器 瀏覽:774
導航卡在車上怎麼選文件夾 瀏覽:969
java實時資料庫 瀏覽:712
方正pdf閱讀器 瀏覽:514
學程序員學歷要求 瀏覽:637
程序員產品打架 瀏覽:109
朱東潤pdf 瀏覽:541
如何得到命令風塊 瀏覽:45
車輛超過2年未解壓 瀏覽:460
mobitopdf在線 瀏覽:74
微指令控制欄位的編譯方法有 瀏覽:393
cad印刷命令怎麼用 瀏覽:690
冷庫壓縮機轉速不穩定 瀏覽:972
8pe513編程 瀏覽:328
互聯網關閉根伺服器是什麼樣 瀏覽:931