Busca el número que falta
A continuación vamos a escribir una función que permite buscar los números que faltan en una lista.
- 📝 Si tienes una lista con
0236
. - 🔍 Se buscan los números que faltan,
145
.
Podemos definir la función de la siguiente manera. Se crea la secuencia completa entre el menor y el mayor número, indicando cuales son todos los esperados. Después vemos si cada uno de ellos está en nums
. Si no está, lo añadimos a faltan
.
def encuentra_numeros(nums):
min_num = min(nums)
max_num = max(nums)
faltan = []
for i in range(min_num, max_num + 1):
if i not in nums:
faltan.append(i)
return faltan
Ahora podemos usarla de la siguiente manera.
nums = [0, 2, 3, 6]
faltan = encuentra_numeros(nums)
print(faltan)
# [1, 4, 5]
✏️ Ejercicios:
- Esta implementación es sencilla pero muy poco eficiente. Busca optimizarla para que tarde menos en buscar los números que faltan.