二分搜尋是一種在排序數組中尋找元素的更有效的演算法。它的工作原理是反覆將搜尋間隔分成兩半。以下是您的二元搜尋函數的詳細分類:
function binarySearch(array $arr, float|int $x) { $low = 0; $high = count($arr)-1; // $midIndex = (int) ($low ($high - $low)/2); $i = 0; while($low $arr[$midIndex]){ $low = $midIndex 1; echo $low."\n"; }else{ $high = $midIndex - 1; } } return "The number {$x} was not found in the array"; } echo binarySearch([1,2,3,4,5,6,7,8,9,10,44,45,46,47,48,49,50], 45)
函數binarySearch接受兩個參數:
線性搜尋是用於尋找陣列中特定元素的最簡單的搜尋演算法之一。讓我們分解一下 PHP 中的 LinearSearch 函數。
function linearSearch(array $arr, float|int $x) { for($i=0; $i線性搜尋函數接受兩個參數:
- $arr:整數陣列。
- $x:要找的數字,可以是浮點數,也可以是整數。
- for 迴圈迭代數組的每個元素。 count($arr) 函數傳回數組中的元素數量。
- 在迴圈內,程式碼檢查目前元素 ($arr[$i]) 是否等於 $x。如果找到匹配項,它將傳回一則訊息,指示找到該號碼的索引。
- 如果循環完成後沒有找到該數字,則函數將傳回一則訊息,指示在陣列中找不到該數字。
- 線性搜尋簡單且易於實現。它順序檢查數組的每個元素,直到找到所需的元素或到達數組末尾。這種方法很簡單,但對於大型陣列來說效率較低,因為它的時間複雜度為 O(n)。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3