Binary Search ဟုလည်းလူသိများသော PPP တွင်ရှာဖွေတွေ့ရှိသည့် PHP တွင်ရှာဖွေမှုဝက်တွင်ရှာဖွေမှုဝက်ဝတ္တတ်သည် classic algorithm ဖြစ်သည်။ ၎င်းသည်ရှာဖွေမှုအကွာအဝေးကိုအလွယ်တကူရှာဖွေခြင်းအကွာအဝေးကိုအဆက်မပြတ်စူးစမ်းလေ့လာခြင်းနှင့်ပစ်မှတ်ထားသည့်ဒြပ်စင်အကြားရှိအရွယ်အစားနှင့်အလယ်အလတ်ဒြပ်စင်များအကြားရှိအရွယ်အစားနှင့်အလယ်အလတ်ဒြပ်စင်အကြားဆက်နွယ်မှုကိုအကဲဖြတ်ခြင်းအားဖြင့်ပိုမိုရှင်းလင်းစွာကျဉ်းမြောင်းသည်။
ခေါက်ဆွဲ၏တစ်ဝက်ရှာဖွေမှု၏အဓိကခြေလှမ်းများပါဝင်သည်:
array ၏အစအညွှန်းကိန်းကို ဘယ်ဘက် နှင့်အဆုံးအညွှန်းကိန်းကို ညာ သို့ထားပါ။
I.E. (ဘယ် + + + + + + +) / 2 အလယ်အလတ် အညွှန်းကိန်းကိုတွက်ချက်ပါ။
Target တန်ဖိုးကိုအလယ်အလတ်ဒြပ်စင်နှင့်နှိုင်းယှဉ်ပါ။ အကယ်. ၎င်းသည်တန်းတူဖြစ်ပါကအညွှန်း ကိန်း ကိုပြန်ပို့ပါ။
အကယ်. target တန်ဖိုးသည်အလယ်ဒြပ်စင်ထက် နည်း ပါက အလယ်ပိုင်း ဒြပ်စင်ထက်နည်းသည်။
အကယ် . Target တန်ဖိုးသည်အလယ်ဒြပ် စင် ထက်သာလွန်ပါက,
Target တန်ဖိုး (သို့) ဘယ်ဘက်> လက်ဝဲ> သည်ရှာဖွေမှုမအောင်မြင်ပါကအထက်ပါအဆင့်များကိုပြန်လုပ်ပါ။
အောက်ဖော်ပြပါအချက်သည် PHP Code signer ကိုပြသနိုင်သည့် php code signing တစ်ခုဖြစ်သည်။
function binarySearch($arr, $target) {
$left = 0;
$right = count($arr) - 1;
while ($left <= $right) {
$mid = intval(($left + $right) / 2);
if ($arr[$mid] == $target) {
return $mid; // ပစ်မှတ်တန်ဖိုး၏တည်နေရာ
}
if ($arr[$mid] < $target) {
$left = $mid + 1; // ညာဘက်တစ်ဝက်ကိုဆက်ရှာဖွေပါ
} else {
$right = $mid - 1; // ဘယ်ဘက်တစ်ဝက်ကိုဆက်ရှာဖွေပါ
}
}
return -1; // ပစ်မှတ်တန်ဖိုးကိုရှာမတွေ့ပါ
}
<p>$arr = [1, 3, 5, 7, 9, 11, 15];<br>
$target = 7;<br>
$index = binarySearch($arr, $target);<br>
if ($index != -1) {<br>
echo "ပစ်မှတ်တန်ဖိုး $target အဆိုပါခင်းကျင်းအတွက်အနေအထားဖြစ်ပါတယ် $index";<br>
} else {<br>
echo "ပစ်မှတ်တန်ဖိုး $target ခင်းကျင်းအတွက်မတည်ရှိပါဘူး";<br>
}<br>
အထက်ဖော်ပြပါကုဒ်သည်အမိန့်ပေးထားသော arrays များနှင့်ပစ်မှတ်တန်ဖိုးများကို parray-target values ၏အနေအထားကိုပြန်ပို့ပေးပြီးမတည်ရှိပါက ပြန်လည်ရောက်ရှိ သည် ။
ရှာဖွေမှု၏ရှုပ်ထွေးမှုသည်ရှာဖွေမှု၏ရှုပ်ထွေးမှု algorithm သည် O (Log N) သည် O (Log N) သည် array length ဖြစ်သည်။ ရှာဖွေမှုတစ်ခုစီသည်အကွာအဝေးကိုတစ်ဝက်လျှော့ချသည်။ ၎င်းသည် linear lookup ထက် ပို. ထိရောက်မှုရှိသည်။
ထို့ကြောင့် Binary Search သည်အမိန့်တပ်ဆင်ထားသော arrays များ၌အစာရှောင်ခြင်းဆိုင်ရာအစိတ်အပိုင်းများအတွက်အလွန်သင့်လျော်သည်။
Binary Search သည်ရှာဖွေရေးအကွာအဝေးကိုသိသိသာသာကျဉ်းမြောင်းနိုင်ပြီးနှိုင်းယှဉ်မှုအရေအတွက်ကိုလျှော့ချနိုင်ပြီးအလျင်အမြန် positioning အောင်မြင်ရန်,
မကြာခဏရှာဖွေရေးစစ်ဆင်ရေးများနှင့်အတူ application များအနေဖြင့် binary ရှာဖွေမှုကိုအသုံးပြုခြင်းသည်အချိန်အလွန်အမင်း overhead ကိုအလွန်လျှော့ချနိုင်သည်။
ဤဆောင်းပါးသည် Php အလယ်ပိုင်းဝက်အလယ်ပိုင်း finish ကို (binary search) algorithm ၏အခြေခံမူများနှင့်အကောင်အထည်ဖော်မှုကိုစနစ်တကျရှင်းပြပြီး Code နမူနာများမှတဆင့်အသုံးပြုမှုကိုပြသသည်။ ဤ algorithm တွင်အချိန်ရှုပ်ထွေးမှုနှင့်မြင့်မားသောထိရောက်မှုနည်းပါးသောလက္ခဏာများရှိပြီးအမိန့်တပ်ဆင်ထားသော arrays ကိုထိရောက်စွာရှာဖွေရန်သင့်လျော်သည်။ ဤ algorithm ကိုကျွမ်းကျင်ခြင်းသည် developer များ၏ပြ problem နာကိုရှာဖွေခြင်းနှင့်အစီအစဉ်စွမ်းဆောင်ရည်ကိုကိုင်တွယ်နိုင်စွမ်းကိုတိုးတက်စေရန်ကူညီလိမ့်မည်။