Home Algoritmos y Estructuras de Datos (VJ1215)

Curso 2022/2023

Solución del ejercicio 3.b del tema 1

int busquedaBinariaIterativa(vector<int> v, int dato) {  // Esto es malo, lo veremos al medir tiempos

   int inicio = 0,
       fin = v.size() - 1;

   while (inicio <= fin) {
      int medio = (inicio + fin) / 2;
      if (v[medio] < dato)
         inicio = medio + 1;
      else if (v[medio] > dato)
         fin = medio - 1;
      else
         return medio;
   }

   return -1;

}