Geometrische Suche

Geometrische Suche

Die geometrische Suche ist ein Suchalgorithmus, der in einem sortierten Array die Position eines gesuchten Wertes ermittelt bzw. feststellt, dass der Wert nicht im Array enthalten ist. Die geometrische Suche wird vor allem dann eingesetzt, wenn man davon ausgeht, dass sich der gesuchte Wert eher im vorderen Teil des Arrays befindet. Der Name ergibt sich aus der verwendeten geometrischen Folge.

Beschreibung

Die Funktionsweise der geometrischen Suche wird durch folgenden Algorithmus skizziert:

Eingabe: Array a, gesuchtes Element x

Sei n dazu die Länge des Arrays a:

  1. Setze i: = 0.
  2. Falls n < 2i, durchsuche den Bereich von 2i − 1 + 1 bis n mit binärer Suche.
  3. Falls x\leq a[2^i]: Durchsuche den Bereich 2i − 1 + 1 bis 2i mit binärer Suche.
  4. Falls x > a[2i]: Setze i: = i + 1 und fahre mit 2. fort.

Der Suchraum wird also verkleinert, indem nacheinander die Positionen 2^0,2^1,2^2,\dots betrachtet werden. Auf dem verkleinerten Suchraum wird die gesuchte Position dann mit binärer Suche ermittelt.

Im Worst Case befindet sich das gesuchte Element an der letzten Arrayposition. Im ersten Teil des Algorithmus (Vergleiche mit 2^0,2^1,2^2,\dots) werden dann log n wesentliche Vergleiche benötigt, genauso wie im zweiten Teil (binäre Suche). Zusammen ergibt sich eine Worst Case-Rechenzeit von \mathcal{O}(\log n).


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Pablo Ruiz Picasso — Dieser Artikel behandelt den spanischen Maler Pablo Picasso. Zu weiteren Bedeutungen von „Picasso“ siehe Picasso (Begriffsklärung). Pablo Picasso im Jahr 1962 Signatur Picas …   Deutsch Wikipedia

  • Picasso — Dieser Artikel behandelt den spanischen Maler Pablo Picasso. Zu weiteren Bedeutungen von „Picasso“ siehe Picasso (Begriffsklärung). Pablo Picasso im Jahr 1962 Signatur Picas …   Deutsch Wikipedia

  • Diskrete Optimierung — Die Ganzzahlige lineare Optimierung (auch ganzzahlige Optimierung) ist ein Teilgebiet der angewandten Mathematik. Wie die Lineare Optimierung beschäftigt sie sich mit der Optimierung linearer Zielfunktionen über einer Menge, die durch lineare… …   Deutsch Wikipedia

  • Ganzzahlige Optimierung — Die Ganzzahlige lineare Optimierung (auch ganzzahlige Optimierung) ist ein Teilgebiet der angewandten Mathematik. Wie die Lineare Optimierung beschäftigt sie sich mit der Optimierung linearer Zielfunktionen über einer Menge, die durch lineare… …   Deutsch Wikipedia

  • Ganzzahlige Programmierung — Die Ganzzahlige lineare Optimierung (auch ganzzahlige Optimierung) ist ein Teilgebiet der angewandten Mathematik. Wie die Lineare Optimierung beschäftigt sie sich mit der Optimierung linearer Zielfunktionen über einer Menge, die durch lineare… …   Deutsch Wikipedia

  • Ganzzahlige lineare Programmierung — Die Ganzzahlige lineare Optimierung (auch ganzzahlige Optimierung) ist ein Teilgebiet der angewandten Mathematik. Wie die Lineare Optimierung beschäftigt sie sich mit der Optimierung linearer Zielfunktionen über einer Menge, die durch lineare… …   Deutsch Wikipedia

  • Grover-Algorithmus — Der Grover Algorithmus ist ein Quantenalgorithmus zur Suche in einer unsortierten Datenbank mit N Einträgen in Schritten und mit Speicherbedarf (siehe O Notation). Er wurde von Lov Grover im Jahre 1996 veröffentlicht[1] und ist der bislang… …   Deutsch Wikipedia

  • Ganzzahlige lineare Optimierung — Die Ganzzahlige lineare Optimierung (auch ganzzahlige Optimierung) ist ein Teilgebiet der angewandten Mathematik. Wie die Lineare Optimierung beschäftigt sie sich mit der Optimierung linearer Zielfunktionen über einer Menge, die durch lineare… …   Deutsch Wikipedia

  • Idealer Staat — Römische Kopie eines griechischen Platonporträts des Silanion, das vermutlich nach dem Tod Platons in der Akademie aufgestellt wurde, Glyptothek München[1] Platon (griechisch  …   Deutsch Wikipedia

  • Platon — Römische Kopie eines griechischen Platonporträts des Silanion, das vermutlich nach dem Tod Platons in der Akademie aufgestellt wurde, Glyptothek München[1] Platon (altgriechisch Πλάτων Plátōn, latinisiert Plato; * 428/ …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”