Die C + + Standard Library -Algorithmus Bibliothek enthält Implementierungen von vielen gängigen Programmier-Algorithmen . Diese Implementierungen bieten eine Reihe von Flexibilität, so dass der Programmierer zum Vergleich Funktionen zum Vergleich -basierte Algorithmen, die mit einer beliebigen Datenstruktur denkbar arbeiten angeben können. Hinzufügen einer Vergleichsfunktion in eine binäre Suche mit der Funktion Zeiger ermöglicht dem Programmierer die Vorteile dieser Flexibilität zu nehmen, und stellt sicher, dass jedes Objekt vom Programmierer erstellt mit der Standard-Bibliothek gesucht werden kann . Things You
Texteditor
Compiler
brauchen anzeigen Weitere Anweisungen
1
Sortieren Sie die Liste von Objekten gesucht werden soll. Eine binäre Suche hängt eine sortierte Liste vorhanden . Verwenden Sie die Standard-Bibliothek ist eine Art Funktion, um diesen Prozess zu vereinfachen , wenn Sie Standard-Bibliothek Behälter:
std :: sort ( myList.begin (); myList.end ());
2
erstellen Sie Ihre Vergleichsfunktion für die binären Suchalgorithmus . Die Vergleichsfunktion muss true zurückgeben, wenn das erste Argument kleiner ist als der zweite . Fertigen Sie diese Funktion, um Argumente von Ihnen angegebenen Klasse zu akzeptieren, und sicherzustellen, dass die Klasse in Frage implementiert die weniger als ( "<" ) Betreiber :
bool MyComparison ( MyType i, j MyType )
< p> {
return ( i < j) ; }
3
Versorgen Sie Ihre Vergleichsfunktion als Argument für die Standard- Bibliothek binären Suchfunktion :
binary_search ( myList.begin () , myList.end () , MyComparison );
Diese Funktion wird jetzt mit Ihrem Vergleichsfunktion , um die binäre Suche durchzuführen
.