otsimine). 4. O(n*log n) – linearitmiline keerukus (kui õnnestub saavutada O(N2) asemel, siis on hästi. Kiirsorteerimine & mestimine, kiirem kui ruutkeerukus). 5. O(N2) – ruutkeerukus (andmehulga kasvamisel 10x suureneb tööaeg 102 x, enamasti 2 tsüklit üksteise sees, sõltuvad algandmete hulgast, sobilik väikeste probleemide lahendamisex). 6. O(N3) – kuupkeerukus (3 tsüklit üksteise sees, sõltuvad algandmete hulgast, sobilik väikeste andmehulkade korral, maatriksite korrutamine). 7. O(2n) – eksponentsiaalne keerukus (N=10, aeg on 1000; N=200, aeg on 1 000 000, ebapraktiline, sellised on tihti jõumeetodil lahendused) 2. Algoritmimise strateegiate lühike iseloomustus ja kasutamise näide (Brute-force algoritmid, ahned algoritmid, dünaamiline programmeerimine).
paaritu Parallelsed ja jagatud Vektorite sisestamine, sorteerimine, timsort algoritmid väljastamine, liitmine, lahutamine ja skalaarkorrutis O(n2) O(n3) O(2n) O(n!) Ruutkeerukus Kuupkeerukus Eksponentsiaalne Faktoriaalne • Andmehulga kasvamisel 10 korda Enamasti 3 tsüklit • Kui N=10 on aeg 1000, suureneb tööaeg 100 korda. üksteise sees, mis • Suurendades N-i 20 • Enamasti 2 tsüklit üksteise see ja kõik sõltuvad korda, kasvab tööaeg mõlemad sõltuvad algandmete algandmete hulgast. 1000000-ni. hulgast