For döngəsinin böyük O nədir?
For döngəsinin böyük O nədir?

Video: For döngəsinin böyük O nədir?

Video: For döngəsinin böyük O nədir?
Video: Pərdə arxası #2 - Fahişə həyatı - uşaqlar baxmasın 2024, Bilər
Anonim

The böyük O a döngə təkrarların sayıdır döngə daxilində ifadələrin sayına döngə . İndi tərifə görə, Böyük O olmalıdır O (n*2) amma belədir O (n).

Eynilə, siz soruşa bilərsiniz ki, for loopunun mürəkkəbliyi nədir?

İfadələrin O(1) olduğunu qəbul etdiyimiz üçün for üçün ümumi vaxt döngə N * O(1), ümumi O(N)-dir. Xarici döngə N dəfə yerinə yetirir. Hər dəfə xarici döngə icra edir, daxili döngə M dəfə icra edir. Nəticədə içəridəki ifadələr döngə cəmi N * M dəfə yerinə yetirin.

Bundan əlavə, nümunə ilə Big O notasiyası nədir? The Böyük O qeydi alqoritmin yuxarı sərhədini təyin edir, funksiyanı yalnız yuxarıdan bağlayır. üçün misal , Insertion Sort halını nəzərdən keçirin. Ən yaxşı halda xətti vaxt, ən pis halda isə kvadratik vaxt tələb olunur. Əminliklə deyə bilərik ki, Insertion növünün vaxt mürəkkəbliyi belədir O (n^2).

Sadəcə olaraq, for loopunun vaxt mürəkkəbliyini necə tapmaq olar?

Məsələn, Seçmə çeşidi və Daxiletmə Sortunda O(n^2) var zaman mürəkkəbliyi . O(Giriş) Zamanın mürəkkəbliyi a döngə olduğu halda O(Logn) kimi qəbul edilir döngə dəyişənlər sabit məbləğə bölünür / vurulur. Məsələn, Binar Axtarışda O(Logn) var. zaman mürəkkəbliyi.

Big O-nu necə hesablayırsınız?

Kimə Böyük O hesablayın , kodun hər bir sətirindən keçib onun olub-olmadığını müəyyən edə bilərsiniz O (1), O (n) və s və sonra geri qaytarın hesablama Sonda. Məsələn, ola bilər O (4 + 5n) burada 4 dörd nümunəni təmsil edir O (1) və 5n beş misalını təmsil edir O (n).

Tövsiyə: