Lernfabrik

Einführung in die Binäre Suche

Binäre Suche

Die binäre Suche ist ein effizienter Suchalgorithmus, der auf einem sortierten Array basiert. Sie funktioniert, indem das Array in der Mitte geteilt wird, und prüft, ob das gesuchte Element links oder rechts vom Mittelpunkt liegt. Dieser Vorgang wird wiederholt, bis das Element gefunden wird oder die Liste aufgebraucht ist.

Die binäre Suche funktioniert nur mit sortierten Daten und ist wesentlich schneller als das sequentielle Suchen, insbesondere bei großen Datenmengen.

Grundlagen für die Binäre Suche

Vergleichszahlen bei erfolgreicher Suche:

  • Bester Fall: 1 Vergleich
  • Durchschnitt: log2(n)
  • Schlechtester Fall: log2(n)

Vergleichszahlen bei erfolgloser Suche:

  • Immer: log2(n) Vergleiche notwendig
  • Komplexität: O(log n)

Die Laufzeitkomplexität der binären Suche beträgt im schlimmsten Fall O(log n), was sie für große Datenmengen deutlich schneller macht als die lineare Suche.

Übungsaufgaben

Hinweis: Die Lösung Ihrer Aufgabe muss in Moodle hochgeladen werden.

Aufgabe: Binäre Suche
Schwierigkeitsgrad: Einfach
    Gegeben sei die Liste: 3, 7, 10, 14, 19, 22, 30

  • Suche nach der Zahl 19 mithilfe des binären Suchalgorithmus.
  • Wie viele Vergleiche werden im schlechtesten Fall benötigt?
Programmieraufgabe: Binäre Suche
Schwierigkeitsgrad: Mittel
    Gegeben sei ein Array mit folgenden Werten: 2, 4, 5, 7, 8, 9, 11

  • Schreiben Sie eine Funktion fBinarySearch(), die überprüft, ob ein bestimmter Wert im Array enthalten ist.
  • Geben Sie zusätzlich die Anzahl der benötigten Vergleiche aus.