Logarithms ဆိုတာဘာလဲနှင့် O(log n) ဘယ်လိုတွက်မလဲ

Big O အကြောင်းရေးတော့ O(log n) အကြောင်းပါတစ်ခါတည်းရှင်းပြမလို့ဘဲ။ ဒါပေမယ့် Logarithms ဆိုတာဘာလည်းရှင်းပြရဦးမယ်ဆိုပြီး နောက်ထပ် Post တစ်ခုလုပ်ဖို့ဆုံးဖြတ်လိုက်တာ။ ဒီ Post မှာ Logarithms ကို ရှင်းပြရင်းနှင့် O(log n) ပါတစ်ခါတည်းရှင်းပြပါ့မယ်။ ကျောင်းတုန်းကတော့ Logarithm ကိုသင်ခဲ့ဖူးတယ်။ ကျွန်တော်တော့မေ့ကုန်လို့ Khan Academy ကပြန်ကြည့်ရတယ်။ ပထမဆုံး Logarithms ဆိုတာဘာလဲကအရင်စရှင်းကြရအောင်… အထက်ဖော်ပြပါပုံရဲ့ ပထမ line မှာဆိုရင် 2 ^ 4 (2 power 4) က (2 x 2 x 2 x 2) 2 ကိုလေးခါမြှောက်တာနှင့်တူတယ်။ ဒုတိယ line မှာဆိုရင် 2 […]

Big O Notation ဆိုတာဘာလဲ

Computer ကျောင်းဆင်းတွေဆိုရင်တော့ Big O ဆိုတာဘာလဲသိကြမယ်ထင်တယ်။ ကျွန်တော်တော့ ကိုယ့်ဘာသာ Algorithm Courses တွေလိုက်တက်ရင်းဟိုဖတ်ဒီဖတ်ဖတ်ရင်းမှ Big O ဆိုတာကြားဖူးပြီးလေ့လာဖြစ်တာပါ။ ကျွန်တော့်အတွက်တော့စလုပ်ခါစမှာ သိပ်မလွယ်ဘူးလို့ခံစားရပါတယ်။ ကျွန်တော်တက်နိုင်သလောက် အလွယ်ကူဆုံးဖြစ်အောင်တော့ကြိုးစားပြီး References တွေယူပြီးရှင်းပြထားပေးပါတယ်။ Big O ဆိုတာဘာလဲကအရင်စလိုက်ကြရအောင်။ ရိုးရိုးရှင်းရှင်းနားလည်အောင်ပြောရမယ်ဆိုရင် Big O ဆိုတာ Programmer အချင်း Algorithm တွေအကြောင်းပြောတဲ့နေရာမှာသုံးတဲ့စကားဖြစ်ပါတယ်။ Algorithm ထပ်ရှင်းရမယ်ဆိုရင် ကျွန်တော်တို့ရေးနေတဲ့ Function တွေဟာ Algorithm တွေလို့အကြမ်းဖျင်းမှတ်သားနိုင်ပါတယ်။ အဲ့တော့ Big O ဆိုတာ ကျွန်တော်တို့ရေးသားနေတဲ့ Program ထဲက Function တွေက input size ပေါ်မူတည်ပြီးတော့နှေးတယ်မြန်တယ်ဆိုတာတွေကိုခွဲခြားပေးတဲ့နည်းလို့ သတ်မှတ်နိုင်ပါတယ်။ နောက် Big O ကိုတစ်နည်း Asymptotic […]