9000+ 次瀏覽
搜尋演算法用於從資料集搜尋或查詢一個或多個元素。此類演算法用於從特定資料結構中查詢元素。搜尋可以是連續的,也可以不是。如果資料集中的資料是隨機的,那麼我們需要使用連續搜尋。否則,可以使用其他不同技術來降低複雜性。在本節中,我們將介紹 − 二分搜尋 指數搜尋 插值搜尋 跳躍搜尋 線性搜尋 三分搜尋
3000+ 次瀏覽
如同二分查詢,它也將列表分離成子列表。此過程使用兩個中間中值將列表分為三部分。由於列表分成了更多子劃分,因此它會減少搜尋鍵值的時間。三元搜尋技術的複雜度時間複雜度:O(log3 n)空間複雜度:O(1)輸入和輸出輸入:一個已排序的資料列表:12 25 48 52 67 79 88 93 要搜尋的鍵值 52 輸出:已在位置找到專案:3演算法 ternarySearch(array, start, end, key)輸入 -一個已排序的陣列、起始和結束位置以及要查詢的鍵值輸出 -鍵值的位置(如果找到的話),否則為錯誤 ... 閱讀更多
4K+ 瀏覽量
指數搜尋也稱為加倍或搜尋。該機制用來查詢搜尋鍵可能存在的位置。如果 L 和 U 是列表的上限和下限,則 L 和 U 都為 2 的冪。對於最後一截,U 是列表的最後一個位置。因此,稱為指數。在找到特定範圍後,它使用二元搜尋技術來查詢搜尋鍵的確切位置。指數搜尋技術的複雜度最佳情況下時間複雜度:O(1)。O(log2 i) ... 閱讀更多