ရိုးရှင်းသောရွေးချယ်မှု sorting သည်အလိုအလျောက်အမျိုးမျိုးသောအချက်အလက်အမျိုးမျိုးကိုထိရောက်စွာလုပ်ဆောင်နိုင်သည့်အလိုအလျောက် အသုံးပြု. အများအားဖြင့်အသုံးပြုသော sorting algorithm ဖြစ်သည်။ အဓိကအယူအဆတစ်ခုစီသည်အချိန်တိုင်းခွဲထားရန်နှင့် sorted sequence ကိုအနိမ့်ဆုံးနေရာတွင်ထားရန်ဒြပ်စင်များထံမှအနည်းဆုံးတန်ဖိုးကိုရွေးချယ်ရန်ဖြစ်သည်။ သတ်သတ်မှတ်မှတ်ဖြစ်စဉ်မှာ - ပထမ ဦး ဆုံးအကြိမ်သည်အသေးငယ်ဆုံးဒြပ်စင်ကိုရွေးချယ်ပြီးပထမနေရာတွင်ပထမဆုံးအကြိမ်အဖြစ်ပထမ ဦး ဆုံးရာထူးကိုဖလှယ်ခြင်းနှင့်ဒုတိယအကြိမ်ကျန်ရှိသည့်အသေးငယ်ဆုံးတန်ဖိုးကိုရွေးချယ်ပြီးဒြပ်စင်များအားလုံးကိုခွဲထားသည့်အထိ,
ပထမ ဦး စွာ Array အရှည် n ကိုရယူပါ။ ထို့နောက် N-1 ပတ်ပတ်လည်ရွေးချယ်မှုစစ်ဆင်ရေးကိုလုပ်ဆောင်ပါ။ ရွေးချယ်မှုတစ်ခုစီသည်သတ်မှတ်ထားသောအစိတ်အပိုင်းတစ်ခုမှအနည်းဆုံးတန်ဖိုးကိုတွေ့ရှိပြီးဒေသန္တရအမိန့်ကိုရရှိရန်လက်ရှိပတ်ပတ်လည်တွင်လက်ရှိပတ် 0 န်းကျင်၏စတင်အနေအထားတွင်ဖော်ပြထားသော element ကိုဖလှယ်သည်။
အောက်ဖော်ပြပါသည် algorithm ၏သတ်သတ်မှတ်မှတ်ကွပ်မျက်ခြင်းလုပ်ငန်းစဉ်ကိုနားလည်စေသည့် PHP အကောင်အထည်ဖော်မှုကိုရိုးရှင်းသောရွေးချယ်မှုဆိုင်ရာရွေးချယ်မှုဆိုင်ရာရွေးချယ်ခြင်းအတွက်နမူနာကုဒ်ဖြစ်သည်။
function selectionSort(&$arr)
{
$len=count($arr);
for($i=0;$i<$len-1;$i++)
{
$min=$i; // လက်ရှိ element သည်အနိမ့်ဆုံးတန်ဖိုးကိုအနေအထားဖြစ်သည်ဟုယူဆပါ
for($j=$i+1;$j<$len;$j++) // သေးငယ်တဲ့တန်ဖိုးများကိုနောက်ဆက်တွဲဒြပ်စင်များမှရှာပါ
{
if($arr[$j]<$arr[$min])
{
$min=$j; // အနည်းဆုံးတန်ဖိုးအနေအထားကို update လုပ်ပါ
}
}
if($min!=$i) // အနေအထားပြောင်းလဲသောအခါ swap element တွေကို
{
$temp=$arr[$min];
$arr[$min]=$arr[$i];
$arr[$i]=$temp;
}
}
}
ရိုးရိုးရှင်းရှင်းရွေးချယ်ခြင်း Sorting သည် N-1 ရွေးချယ်မှုလိုအပ်သည်။ ပတ်ပတ်လည်တစ်ခုချင်းစီသည်ကျန်ရှိသောဒြပ်စင်များထဲတွင်အနည်းဆုံးတန်ဖိုးကိုတွေ့ရှိရပြီးနှိုင်းယှဉ်မှုအရေအတွက်သည်N² / 2 နှင့်ပတ်သက်သောအရာဖြစ်သည်။ ရှုပ်ထွေးသောရှုပ်ထွေးမှုသည်အို (n²) ဖြစ်သည်။ မည်သို့ပင်ဆိုစေကာမူဒေတာ volume သည်သေးငယ်သည်သို့မဟုတ်အခြေခံအားဖြင့်အမိန့်ပေးသည့်အခါ algorithm သည်လက်တွေ့ကျနေဆဲဖြစ်သည်။
ဤ algorithm သည်ယာယီနေရာချထားရန်အတွက်ယာယီ variable တစ်ခုကိုသာ အသုံးပြု. အလွန်သေးငယ်သောနေရာများ overhead နှင့် o (1) ၏ spatial ရှုပ်ထွေးမှုနှင့်အတူကူညီရန်ယာယီ variable ကိုသာအသုံးပြုသည်။
ရိုးရှင်းသောရွေးချယ်မှု sorting သည်မတည်ငြိမ်သော sorting algorithm ဖြစ်သည်။ တူညီသော element များသည် sorting လုပ်ငန်းစဉ်အတွင်းရာထူးများကိုလဲလှယ်ခြင်းကြောင့်ဆွေမျိုးအမိန့်ကိုပြောင်းလဲနိုင်သည်။ ဥပမာအားဖြင့် 5 5 2 9 တွင်ပထမ ဦး ဆုံး element 5 နှင့်အတူအသေးငယ်ဆုံးဒြပ်စင် 2 ကိုလဲလှယ်ပြီးနောက်ပထမ ဦး ဆုံး element 5 နှင့်အတူပထမ ဦး ဆုံး extrange letter letical letter leteased leteased lete societal order အမိန့်အနှောင့်အယှက်ပေးခဲ့ပါတယ်။