Es sei eine Menge von Indizes, und
eine Funktion, die überprüft, ob ein gegebener Index
eine gewisse Eigenschaft erfüllt oder nicht, also
oder
. Mit Hilfe des GROVER-Suchalgorithmus [23.5] ist es möglich, mit nur
-maligem Aufrufen der Funktion
einen Index
zu finden, der die gewünschte Eigenschaft
erfüllt.
Dieser Algorithmus ist für eine gewisse Klasse von Problemen nützlich, nämlich für solche, für die es zwar einfach ist zu überprüfen, ob eine gegebene Antwort das Problem löst, es aber umgekehrt schwierig ist, eine solche Antwort zu finden.
Beispiel A: Suche in einer unstrukturierten Datenbank |
In einer Datenbank mit |
Beispiel B: Handlungsreisender |
Der GROVER-Suchalgorithmus kann somit auch die brute-force-Suche, das Duchprobieren aller Möglichkeiten, bei Problemen wie dem des Handlungsreisenden beschleunigen (siehe auch Rundreiseproblem und Transportnetze). Für eine Menge von |