57

Búsqueda Binaria en C++ [57]

La búsqueda binaria en C++ Es un algoritmo de búsqueda que encuentra la posición de un valor en un array ordenado. Compara el valor con el elemento en el medio del array, si no son iguales, la mitad en la cual el valor no puede estar es eliminada y la búsqueda continúa en la mitad restante hasta que el valor se encuentre.

Código: https://github.com/programadornovato/c-/commit/a03390516c633d3fc64a38ecdec53f748d16d4dd

#include <iostream>
int main(){
    int lista[]={1,2,3,4,5},valor,con,inf,sup,mitad,tam;
    bool encontrado=false;
    tam=sizeof(lista)/sizeof(*lista);
    regresa:
    con=0;
    inf=0;
    sup=tam;

    std::cout<<"Humano ingresa un valor de la siguiente lista: ";
    for (int i = 0; i < tam; i++)
    {
        std::cout<<lista[i]<<" ";
    }
    std::cout<<"\nIngresa el valor:";
    std::cin>>valor;

    while ( (inf<=sup) && con<tam )
    {
        mitad=(inf+sup)/2;
        if(lista[mitad]==valor){
            encontrado=true;
            break;
        }
        if(lista[mitad]>valor){
            sup=mitad;
            mitad=(inf+sup)/2;
        }
        if(lista[mitad]<valor){
            inf=mitad;
            mitad=(inf+sup)/2;
        }
        con++;
    }
    if( encontrado==false ){
        std::cout<<"Huamno estupido intentalo de nuevo:\n ";
        goto regresa;
    }
    if(encontrado==true){
        std::cout<<"Bien echo humano el valor fue encontrado en la posicion: "<<mitad+1<<", ahora dame la patita :)\n ";
    }


    system("pause");
    return 0;
} 

Descargar zip con todos los codigos: http://raboninco.com/bXZK
[CURSO] C++ DE 0 A HEROE: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTofxs7iottRxJ5YPM7BOcc

🎦 [Curso] Visual Studio Code 🆚 de 0 a 100: https://www.youtube.com/playlist?list=PLCTD_CpMeEKQbdlT8efsS-veXuvYZ1UWn

Gracias por apoyar este canal: https://www.patreon.com/programadornovato
🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com

<<Anterior tutorial Siguiente tutorial >>

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Eugenio Chaparro.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a digitalocean.com que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad