Binäres Suchen

Prüfe, ob das mittlere Element dem Suchelement entspricht!

Wenn ja: Ausgabe("Element gefunden an Position"+Mitte)

Wenn das mittlere Element größer als das Suchelement ist, suche im unteren Teil nach demselben Verfahren weiter!

Wenn das mittlere Element kleiner als das Suchelement ist, suche im oberen Teil nach demselben Verfahren weiter!

Beispiel:

Reihung = {0; 1; 2; 3; 4; 5; 6}

gesucht wird: 5

zuerst wird verglichen: 3 mit 5 (mittleres Element)
Ergebnis: 3 < 5
Die 5 wird nun in der Reihung {4; 5; 6} nach demselben Verfahren weiter gesucht.

nun wird verglichen: 5 mit 5
Ergebnis: 5=5
Das Element ist gefunden, die entsprechende Ausgabe beendet den Algorithmus.

Bester Fall:
Das gesuchte Element steht genau in der Mitte.
(1 Vergleich)

Schlechtester Fall:
Das gesuchte Element wird erst bei der letztmöglichen Teilung gefunden oder ist gar nicht in der Reihung enthalten.
(log(n) Vergleiche)

In mittleren Fall werden log(n) Vergleiche benötigt.
Binäres Suchen hat also eine logarithmische Zeitabhängigkeit.

Binäres Suchen darf nur auf sortierte Folgen angewendet werden.
Binäres Suchen kann als iterativer oder rekursiver Algorithmus umgesetzt werden!