Ejemplo de algoritmo de búsqueda binaria en C ++

Ejemplo de algoritmo de búsqueda binaria en C ++

Aquí hay un simple ejemplo de búsqueda binaria en C++. El ejemplo primero crea un vector de 4 000 000 números y luego hace una llamada de función de la función principal a binary_search.

búsqueda binaria.CPP

#InClude #Include usando el espacio de nombres STD; void binary_search (const vector & números, valor int); int main () vector my_numbers; para (int i = 0; i<4000000; i++) my_numbers.push_back(i); cout << "Size of vector my_nymbers :" << my_numbers.size() << endl;   Binary_Search(my_numbers, 2);  Binary_Search(my_numbers, 23);  Binary_Search(my_numbers, 234);  Binary_Search(my_numbers, 7655);  Binary_Search(my_numbers, 10101);  Binary_Search(my_numbers, 895543);  Binary_Search(my_numbers, 3785111); return 0;  void Binary_Search(const vector< int> & my_numbers, int key) int iteration = 0, izquierda = 0, right = my_numbers.tamaño ()-1, medio; mientras (izquierda <= right)   iteration++;  mid = (int) ((left + right) / 2);  if (key == my_numbers[mid])   cout << "Binary search found " << my_numbers[mid] << " after " << iteration << " iterations.\n";  iteration++;  return;   else if (key > my_numbers [Mid]) izquierda = Mid + 1; más correcto = Mid - 1;  cout << "Binary search did not found " << my_numbers[mid] << " after " << iteration << " iterations.\n"; return; 

Compilar:

$ G ++ Binary-Search.CPP -O Binary -Search 

Correr:

ps ./búsqueda binaria 

Producción:

Tamaño de vector my_nymbers: búsqueda binaria 4000000 encontrada 2 después de 20 iteraciones. Búsqueda binaria encontrada 23 después de 21 iteraciones. Búsqueda binaria encontrada 234 después de 22 iteraciones. Búsqueda binaria encontrada 7655 después de 21 iteraciones. Búsqueda binaria encontrada 10101 después de 22 iteraciones. Búsqueda binaria encontrada 895543 después de 19 iteraciones. Búsqueda binaria encontrada 3785111 después de 22 iteraciones. 

Tutoriales de Linux relacionados:

  • Introducción a JavaScript Loops
  • Cómo mejorar la representación de fuentes de Firefox en Linux
  • Ejemplos e introducción de bucles ansibles
  • Vim Editor Basics en Linux
  • Cómo instalar G ++ El compilador C ++ en Ubuntu 22.04 LTS ..
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Bucles anidados en guiones Bash
  • Ejemplos de comando kubectl (hoja de trucos)
  • Cómo verificar una salud del disco duro desde la línea de comandos ..
  • Cómo trabajar con la API REST de WooCommerce con Python