PYTHON Búsqueda Binaria [69]

La Búsqueda Binaria 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.

En este tutorial vamos a hacer lo siguiente:

  • Crear una lista e iniciarla con números aleatorios y mostrarle esa lista al humano.
  • Pedir al humano que ingrese un número.
  • Buscar el numero que ingreso el humano en la lista de forma binaria.
  • Si el numero no esta en la lista pedir al humano que ingrese otro numero.
  • Si el numero si esta en la lista informarle al humano.

Codigo: https://github.com/programadornovato/curso-python/commit/773025f0d1c3328dd9e5845244858462be435af5

def pedirNumero(lista):
    for numero in lista:
        print(numero,end=" ")
    num=int(input("\nHumano por favor ingresa un numero de la lista anterior:"))
    return num
def busquedaBinaria(lista,num):
    tam=len(lista)
    cont=0
    inf=0
    sup=tam
    while inf<=sup and cont<tam:
        mitad=int((inf+sup)/2)
        if lista[mitad]==num:
            return True
        elif lista[mitad]>num:
            sup=mitad
            mitad=int((inf+sup)/2)
        elif lista[mitad]<num:
            inf=mitad
            mitad=int((inf+sup)/2)
        cont=cont+1
    return False
lista=[1,2,3,4,5,6,7,8,9,10]
while True:
    num=pedirNumero(lista)
    encontrado=busquedaBinaria(lista,num)
    if encontrado==True:
        print("Felicidades humano el numero ingresado esta en la lista ahora dame la patita :)")
        break
    else:
        print("Humano tonto el numero no esta en la lista intentalo de nuevo:")

🎦57.- C++ desde cero 2019🦸‍♂️ [Búsqueda Binaria]: https://www.youtube.com/watch?v=G7pcsG_qKJc

🎦[CURSO] PYTHON PARA PRINCIPIANTES🐍: https://www.youtube.com/playlist?list=PLCTD_CpMeEKRppvi86Dy8CPYZ8-XzN2qu

🔗 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

Eugenio Chaparro

Entradas recientes

Ejercicio.- Adivinar un numero random en kotlin (Curso de Kotlin desde cero [34])

Ejercicio.- Adivinar un numero random en kotlin (Curso de Kotlin desde cero [34])

En este tutorial vamos a hacer un programa que: Generamos un número aleatorio entre 1…

5 meses hace
Ejercicio.- Dibujar una escalera con asteriscos con ciclo for (Curso de Kotlin desde cero [33])

Ejercicio.- Dibujar una escalera con asteriscos con ciclo for (Curso de Kotlin desde cero [33])

Crear un programa en kotlin dibuje una escalera de asteriscos. Pedir al humano el tamaño…

5 meses hace
Ciclo for (Curso de Kotlin desde cero [32])

Ciclo for (Curso de Kotlin desde cero [32])

Los ciclos for son lo que se conoce como estructuras de control de flujo cíclicas…

5 meses hace
Ciclo do while (Curso de Kotlin desde cero [31])

Ciclo do while (Curso de Kotlin desde cero [31])

La sentencia (hacer mientras) crea un bucle que ejecuta una sentencia especificada, hasta que la…

5 meses hace
Ciclos while (Curso de Kotlin desde cero [30])

Ciclos while (Curso de Kotlin desde cero [30])

Los ciclos while son una estructura cíclica, que nos permite ejecutar una o varias líneas…

5 meses hace
Ejercicio.- Juego de azar con dados (Curso de Kotlin desde cero [29])

Ejercicio.- Juego de azar con dados (Curso de Kotlin desde cero [29])

En este tutorial vamos a crear un juego de azar con las siguientes características.En una…

5 meses hace