Care este marele O al căutării binare?
Care este marele O al căutării binare?

Video: Care este marele O al căutării binare?

Video: Care este marele O al căutării binare?
Video: Binary Search - Time Complexity 2024, Mai
Anonim

Căutare binară este mai rapid decât liniar căutare cu excepția matricelor mici.

Căutare binară algoritm.

Vizualizarea căutare binară algoritm unde 7 este valoarea țintă
Clasă Căutare algoritm
Performanță în cel mai bun caz O (1)
Performanță medie O (log n)
Complexitatea spațială în cel mai rău caz O (1)

Din acest motiv, care este complexitatea căutării binare?

Căutare binară rulează în cel mai rău timp logaritmic, făcând comparații O(log n), unde n este numărul de elemente din matrice, O este notația Big O și log este logaritmul. Căutare binară ia spațiu constant (O(1)), ceea ce înseamnă că spațiul ocupat de algoritm este același pentru orice număr de elemente din matrice.

În plus, căutarea binară este cea mai rapidă? Da și nu. da sunt căutări care sunt mai rapide, în medie, decât o bisectie căutare . Dar cred că sunt încă O(lg N), doar cu o constantă mai mică. Doriți să minimizați timpul necesar pentru a vă găsi elementul.

În mod similar, cineva se poate întreba, cum scrieți o căutare binară?

Căutare binară : Căutare o matrice sortată prin împărțirea în mod repetat a căutare interval la jumătate. Începeți cu un interval care acoperă întreaga matrice. Dacă valoarea lui căutare cheia este mai mică decât elementul din mijlocul intervalului, restrângeți intervalul la jumătatea inferioară. În caz contrar, îngustează-l la jumătatea superioară.

Care este complexitatea timpului a căutării binare?

Deci trebuie să existe un anumit tip de comportament pe care algoritmul arată că i se dă a complexitate de buștean n. Să vedem cum funcționează. De cand căutare binară are eficiența cazului cel mai bun de O(1) și eficiența cazului cel mai rău (cazul mediu) a O(log n), ne vom uita la un exemplu al cazului cel mai rău. Luați în considerare o matrice sortată de 16 elemente.

Recomandat: