Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Declaro el arreglo de prueba
- var arr = [4,5,1,2,3,4];
- //Declaro la funcion que intercambia el primer elemento por el menor
- function menorDelante(arr) {
- //Clono el arreglo para evitar modificar el original
- var ARR = arr.slice();
- //Obtengo el indice del menor elemento del arreglo
- var menorI = elMenor(ARR);
- //Almaceno el menor elemento del arreglo y lo sustituyo por el primer elemento del mismo
- var menor = ARR.splice(menorI,1,ARR[0]);
- //Sustituyo ahora el primer elemento por el menor elemento almacenado previamente
- ARR.splice(0,1,menor[0]);
- //Devuelvo el arreglo reordenado
- return ARR;
- }
- //Declaro la funcion que encuentra el menor valor
- function elMenor(arr) {
- //Inicializo mi acumulador en infinito posiivo
- var menor = Number.POSITIVE_INFINITY;
- //inicializo un segundo acumulador para almacenar el indice
- var menorI = -1;
- //Recorro el arreglo
- arr.forEach((num, i, arr) => {
- //Si la posicion actual es menor que mi acumulador, la guardo el el acumulador y almaceno el indice
- if (num < menor) {
- menor = num;
- menorI = i;
- }
- });
- //Al final retorno el uindice almacenado
- return menorI;
- }
- //Ejecuto mi prueba
- var prueba = menorDelante(arr);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement