Vad är log n?

Innehållsförteckning:

Vad är log n?
Vad är log n?
Anonim

Som nämnts i svaret på den länkade frågan, är ett vanligt sätt för en algoritm att ha tidskomplexitet O(log n) att den algoritmen fungerar genom att upprepade gånger skära ner storleken på indata med någon konstant faktor för varje iteration.

Vad är meningen med log n?

O(log N) betyder i princip tiden går upp linjärt medan n går upp exponentiellt. Så om det tar 1 sekund att beräkna 10 element, kommer det att ta 2 sekunder att beräkna 100 element, 3 sekunder att beräkna 1000 element, och så vidare. Det är O(log n) när vi delar och erövrar typ av algoritmer, t.ex. binär sökning.

Vad är O och log n?

För inmatning av storlek n kommer en algoritm av O(n) att utföra steg som är proportionella mot n, medan en annan algoritm av O(log(n)) kommer att utföra steg ungefär log(n). Uppenbarligen är log(n) mindre än n och därför är komplexitetsalgoritmen O(log(n)) bättre.

Hur beräknar du log n?

Tanken är att en algoritm är O(log n) om du istället för att bläddra genom en struktur 1 gånger 1 delar strukturen på mitten om och om igen och gör ett konstant antal operationer för varje split. Sökalgoritmer där svarsutrymmet hela tiden delas är O(log n).

Vad är log n Square?

Log ^2 (

) betyder att den är proportionell mot log i log för ett problem av storleken

. Log(

)^ 2 betyder att det ärproportionell mot square i loggen.

Rekommenderad: