Ordenamiento dentro de límites
Crea un método 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 sigue sin estar completamente ordenado.
boundSort([1, 9, 2, 5, 7], [0, 4]) ➞ true
boundSort([1, 9, 2, 5, 7], [0, 3]) ➞ false
// Ordenar desde [0, 3] da como resultado [1, 2, 5, 9, 7]; el arreglo sigue sin estar completamente ordenado.Notas
- Los números del arreglo serán únicos.
- El índice inferior de los límites siempre será
0.
Ejemplo en Java
assertEquals(true, Program.boundSort(new int[]{1, 6, 5, 3, 8, 9}, new int[]{0, 3}));