Wat is die groot O van binêre soektog?
Wat is die groot O van binêre soektog?

Video: Wat is die groot O van binêre soektog?

Video: Wat is die groot O van binêre soektog?
Video: 🏹 НОВАЯ ОХОТА на КЕЙСЫ - ТЕСТИМ ТОПОВЫЙ ИВЕНТ на MYCSGO | Сайты с Кейсами КС ГО | Открытие Кейсов 2024, Mei
Anonim

Binêre soektog is vinniger as lineêr Soek behalwe vir klein skikkings.

Binêre soektog algoritme.

Visualisering van die binêre soektog algoritme waar 7 die teikenwaarde is
Klas Soek algoritme
Beste-geval prestasie O (1)
Gemiddelde prestasie O (log n)
Ergste-geval ruimte kompleksiteit O (1)

Hiervan, wat is die kompleksiteit van die binêre soektog?

Binêre soektog loop op die slegste logaritmiese tyd in en maak O(log n) vergelykings, waar n die aantal elemente in die skikking is, die O Groot O-notasie is, en log die logaritme is. Binêre soektog neem konstante (O(1)) spasie, wat beteken dat die spasie wat deur die algoritme geneem word dieselfde is vir enige aantal elemente in die skikking.

Verder, is binêre soektog die vinnigste? Ja en nee. Ja daar is soektogte wat gemiddeld vinniger is as 'n halvering Soek . Maar ek glo dat hulle steeds O(lg N is), net met 'n laer konstante. Jy wil die tyd wat dit neem om jou element te vind verminder.

Net so kan 'n mens vra, hoe skryf jy 'n binêre soektog?

Binêre Soek : Soek 'n gesorteerde skikking deur die herhaaldelik te verdeel Soek interval in die helfte. Begin met 'n interval wat die hele reeks dek. As die waarde van die Soek sleutel is minder as die item in die middel van die interval, vernou die interval tot die onderste helfte. Andersins vernou dit tot die boonste helfte.

Wat is tydskompleksiteit van binêre soektog?

Daar moet dus 'n soort gedrag wees wat die algoritme toon om 'n gegee te word kompleksiteit van log n. Kom ons kyk hoe dit werk. Sedert binêre soektog het 'n beste geval doeltreffendheid van O(1) en slegste geval (gemiddelde geval) doeltreffendheid van O(log n), sal ons kyk na 'n voorbeeld van die ergste geval. Oorweeg 'n gesorteerde reeks van 16 elemente.

Aanbeveel: