Rumah > Artikel > pembangunan bahagian belakang > Algoritma Carian
Carian binari ialah algoritma yang lebih cekap untuk mencari elemen dalam tatasusunan yang diisih. Ia berfungsi dengan membahagikan selang carian berulang kali kepada separuh. Berikut ialah pecahan terperinci fungsi Carian binari anda:
function binarySearch(array $arr, float|int $x) { $low = 0; $high = count($arr)-1; // $midIndex = (int) ($low + ($high - $low)/2); $i = 0; while($low <= $high){ $i++; $midIndex = (int) ($low + (($high - $low)/2)); //the same as intdiv($low + $high, 2); if($arr[$midIndex] == $x){ return "The number {$x} was found in index {$midIndex} of the array. The number of iteration was {$i}"; }elseif($x > $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)
Fungsi binarySearch menerima dua parameter:
Carian linear ialah salah satu algoritma carian paling mudah digunakan untuk mencari elemen tertentu dalam tatasusunan. Mari kita pecahkan fungsi linearSearch dalam PHP.
function linearSearch(array $arr, float|int $x) { for($i=0; $i < count($arr); $i++){ if($x === $arr[$i]){ return "The number {$x} was found in index {$i} of the array\n"; } } return "The number {$x} was not found in the array\n"; } echo linearSearch([1,5,6,3,4,11,3,2], 4);
Fungsi linearSearch menerima dua parameter:
Atas ialah kandungan terperinci Algoritma Carian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!