The C + + biblioteca de algoritmos de la biblioteca estándar contiene las implementaciones de numerosos algoritmos de programación comunes . Estas implementaciones ofrecen una amplia gama de flexibilidad , lo que permite al programador especificar funciones de comparación de algoritmos de comparación basados en que pueden trabajar con cualquier estructura de datos posibles. Adición de una función de comparación para una búsqueda binaria utilizando punteros de función permite al programador para tomar ventaja de esta flexibilidad , y se asegura de que cualquier objeto creado por el programador puede ser buscado con la biblioteca estándar . Cosas que necesitará
texto editor
Compiler
Mostrar más instrucciones
1
Ordenar la lista de objetos que se debe buscar . Una búsqueda binaria depende de una lista ordenada esté presente. Utilice la función de ordenar la biblioteca estándar para simplificar este proceso al utilizar contenedores de la biblioteca estándar :
std :: sort ( myList.begin (); myList.end ());
2
Cree su función de comparación para el algoritmo de búsqueda binaria. La función de comparación debe devolver true si el primer argumento es menor que la segunda . Personaliza esta función para aceptar los argumentos de la clase especificada y asegúrese de que la clase en cuestión aplica el menor que ( "<" ) Operador :
bool MyComparison ( MyType i, j MyType )
< p > {
regreso ( i < j ) ;
}
3
suministrar su función de comparación como argumento a la función de búsqueda binaria de la biblioteca estándar :
binary_search ( myList.begin (), myList.end (), MyComparison ) ;
Esta función utilizará ahora su función de comparación para realizar la búsqueda binaria
.