Wat is die groot O van 'n vir-lus?
Wat is die groot O van 'n vir-lus?

Video: Wat is die groot O van 'n vir-lus?

Video: Wat is die groot O van 'n vir-lus?
Video: I Am Groot | Official Trailer | Disney+ 2024, November
Anonim

Die groot O van 'n lus is die aantal iterasies van die lus in aantal stellings binne die lus . Nou volgens die definisie, die Groot O moet wees O (n*2) maar dit is O (n).

Net so kan jy vra, wat is die kompleksiteit van 'n for-lus?

Aangesien ons aanneem die stellings is O(1), is die totale tyd vir die for lus is N * O(1), wat in die geheel O(N) is. Die buitenste lus voer N keer uit. Elke keer die uiterlike lus voer, die innerlike lus voer M keer uit. As gevolg hiervan, die stellings in die innerlike lus voer 'n totaal van N * M keer uit.

Verder, wat is Big O-notasie met voorbeeld? Die Groot O-notasie definieer 'n boonste grens van 'n algoritme, dit beperk 'n funksie slegs van bo af. Vir voorbeeld , oorweeg die geval van Invoegingssorteer. Dit neem lineêre tyd in beste geval en kwadratiese tyd in slegste geval. Ons kan met sekerheid sê dat die tydskompleksiteit van Invoegingssoort is O (n^2).

Eenvoudig so, hoe vind jy die tydskompleksiteit van 'n for-lus?

Byvoorbeeld Seleksie sorteer en Invoeg sorteer het O(n^2) tyd kompleksiteit . O (Aanmeld) Tydskompleksiteit van 'n lus word as O(Logn) beskou as die lus veranderlikes word gedeel / vermenigvuldig met 'n konstante bedrag. Binêre soektog het byvoorbeeld O(Logn) tyd kompleksiteit.

Hoe bereken jy Big O?

Om bereken Groot O , kan jy deur elke reël kode gaan en vasstel of dit is O (1), O (n) ens en gee dan jou terug berekening aan die einde. Dit kan byvoorbeeld wees O (4 + 5n) waar die 4 vier gevalle van verteenwoordig O (1) en 5n verteenwoordig vyf gevalle van O (n).

Aanbeveel: