Sorting
Sorting ဆိုတဲ့ သဘောတရားကိုတော့ အားလုံးလည်း သိကြမယ်လို့ထင်ပါတယ်။ data structures series ရေးနေပေမဲ့ sorting နဲ့ ပတ်သတ်တဲ့ article မရှိသေးတာနဲ့ ရေးပေးလိုက်ပါတယ်။ sorting ရဲ့ အဓိက ရည်ရွယ်ချက်ကတော့ data တွေကို အစီအစဉ်တကျ နေရာချထားဖို့ပါပဲ။ ဘာကြောင့် sorting လုပ်ရလဲဆိုတော့ searching algorithm တွေပိုပြီးတော့ strong ဖြစ်စေဖို့ (ဥပမာ. Binary search) ၊ ပိုပြီးတော့ ဖတ်လို့အဆင်ပြေတဲ့ format တွေချထားဖို့အတွက်ပဲဖြစ်ပါတယ် (ဥပမာ dictionary မှာဆို alphabet နဲ့ စီထားသလိုပေါ့)။
Sorting စီတဲ့နေရာမှာလည်း သူ့ဟာနဲ့သူ type တွေအမျိုးမျိုးရှိတယ်။ Sorting စီပြီးတဲ့အချိန်မှာ data value တွေက မစီခင်က sequence အတိုင်းရှိရင် stable sorting . sequence ပျက်သွားရင် unstable sorting ၊ ဒါမျိုးတွေရှိမယ်။ ဥပမာ 3 ပါတဲ့ index က နှစ်ခုရှိတယ်ဆိုပါစို့၊ index3 မှာလဲ 3 ၊ index 6 မှာလဲ 3။ sorting စီပြီးတဲ့ အချိန်မှာ index 3 ရဲ့ 3 ကအရင်လာပြီးမှ index 6 ရဲ့ 3 လာတယ်ဆို sequence အတိုင်းဖြစ်တယ် ဒါဆို stable sorting , index6 က အရင်ရှေ့ရောက်နေတယ်ဆို unstable sorting ပေါ့။
In place နဲ့ out place ကွာတဲ့ sorting သဘောတရားလည်းရှိတယ်။ ဘာကွာသွားလဲဆိုတော့ in place က sorting စီတဲ့နေရာမှာ သူ့ရဲ့ structure ထဲမှာပဲလုပ်တယ်။ ဆိုလိုချင်တာ သူ့အတွက် allocate လုပ်ထားတဲ့ memory space မှာပဲ run လို့ရတယ်။ ဥပမာ bubble sort. out place ဆိုတာကတော့ sorting စီဖို့အတွက် လိုအပ်တာထက်ပိုပြီးတော့ memory ယူရတယ်။ ဥပမာ tree sort လိုမျိုးပေါ့။
sorting algorithm တွေကတော့ တော်တော်များများကိုရှိပါတယ်။ အဲ့ထဲကမှ bubble sort , quick sort, merge sort , selection sort, insertion sort စသဖြင့် အသုံးများတဲ့ sorting တွေလည်းရှိပါတယ်။ sorting algorithm တော်တော်များများကို geeksforgeeks မှာသွားဖတ်လို့ရပါတယ်။ တော်တော်စုံပါတယ်။ sorting algorithm အခု 40 လောက်ပါမယ်ထင်တယ်။ အောက်မှာ link ပေးထားပါတယ်။
https://www.geeksforgeeks.org/sorting-algorithms/
Last updated