Ordenamiento acotado
Crea una función que devuelva true si un arreglo de entrada puede ordenarse por completo ordenando únicamente dentro de los límites [0, n] (inclusive), donde n es menor o igual que la longitud del arreglo, y false en caso contrario.
Ejemplos
boundSort([1, 6, 5, 3, 8, 9], [0, 3]) ➞ true
// Si [1, 6, 5, 3] se ordena como [1, 3, 5, 6], el arreglo queda completamente ordenado.
boundSort([1, 6, 5, 3, 8, 9], [0, 2]) ➞ false
// Aunque [1, 6, 5] se ordene como [1, 5, 6], el arreglo todavía no queda completamente ordenado.
boundSort([1, 9, 2, 5, 7], [0, 4]) ➞ true
boundSort([1, 9, 2, 5, 7], [0, 3]) ➞ false
// Ordenar desde [0, 3] produce [1, 2, 5, 9, 7], pero el arreglo todavía no queda completamente ordenado.Notas
- Los números del arreglo serán únicos.
- El índice inferior del límite siempre será
0.