Rutas sin repetir
- O(n log n) · Difícil
- Plan completo
- Python
- JavaScript
- listas
- ordenar
- ciclos
Enunciado
Un letrero de parada guarda el número de cada camión que pasó, en el orden en que pasaron: 12, 7, 12, 40, 7. La misma ruta aparece varias veces, y el letrero solo quiere mostrar qué rutas pasan por ahí, sin repetir ninguna. Escribe una función que reciba una lista de números y regrese una lista nueva con esos números de menor a mayor y sin repetidos. Con el ejemplo de arriba regresas 7, 12 y 40.
Con la lista vacía regresas una lista vacía, y si llega un solo número regresas una lista con ese número.
Pista: cuando ordenas, los repetidos quedan pegados, así que basta con comparar cada número con el que va justo antes.
Ejemplos
Desordenados y repetidos
[12, 7, 12, 40, 7] → [7, 12, 40]
Sin repetidos
[3, 1, 2] → [1, 2, 3]
Ya vienen ordenados
[1, 1, 2, 3, 3] → [1, 2, 3]
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def sin_repetidos(numeros):
passJavaScript
function sinRepetidos(numeros) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.