Hva er den store O for binært søk?
Hva er den store O for binært søk?

Video: Hva er den store O for binært søk?

Video: Hva er den store O for binært søk?
Video: Binary Search - Time Complexity 2024, Kan
Anonim

Binært søk er raskere enn lineær Søk bortsett fra små arrays.

Binært søk algoritme.

Visualisering av binært søk algoritme hvor 7 er målverdien
Klasse Søk algoritme
Best-case ytelse O (1)
Gjennomsnittlig ytelse O (logg n)
Verste tilfelle plasskompleksitet O (1)

Herav, hva er kompleksiteten til det binære søket?

Binært søk løper inn på det verste logaritmiske tidspunktet, og gjør O(log n) sammenligninger, der n er antall elementer i matrisen, O er Big O notasjon, og log er logaritmen. Binært søk tar konstant (O(1)) plass, noe som betyr at plassen tatt av algoritmen er den samme for et hvilket som helst antall elementer i matrisen.

I tillegg, er binærsøk det raskeste? Ja og nei. Ja, det er det søk som i gjennomsnitt er raskere enn en halvering Søk . Men jeg tror at de fortsatt er O(lg N), bare med en lavere konstant. Du ønsker å minimere tiden det tar å finne elementet ditt.

På samme måte kan man spørre seg, hvordan skriver du et binært søk?

Binært søk : Søk en sortert matrise ved gjentatte ganger å dele Søk intervall i to. Begynn med et intervall som dekker hele matrisen. Hvis verdien av Søk nøkkelen er mindre enn elementet i midten av intervallet, begrense intervallet til nedre halvdel. Ellers begrense den til øvre halvdel.

Hva er tidskompleksiteten til binært søk?

Så det må være en type atferd som algoritmen viser for å få en kompleksitet av logg n. La oss se hvordan det fungerer. Siden binært søk har en best case effektivitet på O(1) og worst case (gjennomsnittlig case) effektivitet på O(log n), skal vi se på et eksempel på worst case. Tenk på en sortert matrise med 16 elementer.

Anbefalt: