La libreria C + + dell'algoritmo di libreria standard contiene implementazioni di molti algoritmi di programmazione comuni . Queste implementazioni offrono una gamma di flessibilità , permettendo al programmatore di specificare funzioni di confronto per algoritmi di confronto -based che possono lavorare con qualsiasi struttura di dati immaginabile . L'aggiunta di una funzione di confronto per una ricerca binaria utilizzando puntatori a funzione permette al programmatore di sfruttare questa flessibilità , e assicura che qualsiasi oggetto creato dal programmatore può essere cercato con la libreria standard . Cose che ti serviranno
Text Editor
Compiler
Show More Istruzioni
1
Ordinare l' elenco di oggetti da cercare. Una ricerca binaria dipende da un elenco ordinato essendo presente . Utilizzare funzione di ordinamento della libreria standard per semplificare questo processo, quando si utilizzano i contenitori della libreria standard :
std :: sort ( myList.begin (); myList.end ());
2
Crea la funzione di comparazione per l'algoritmo di ricerca binaria . La funzione di confronto deve restituire true se il primo argomento è minore del secondo . Personalizzare questa funzione per accettare argomenti della classe specificata , e assicurarsi che la classe in questione implementa il meno-che ( " < " ) operatore :
bool MyComparison ( MyType i, MyType j ) per < p > {
ritorno ( i }
3
fornire la vostra funzione di confronto come argomento di funzione di ricerca binaria della libreria standard :
binary_search ( myList.begin ( ) , myList.end ( ) , MyComparison ) ;
Questa funzione sarà ora possibile utilizzare la funzione di confronto da eseguire la ricerca binaria
.