Професионална програма
Loading...
KristianZanev avatar KristianZanev 16 Точки

04.Sorting JS fundamentals

Здравейте,

Бих се радвал да видя друго решение с метода sort на следната задача - Sorting линк . Не мисля, че начина, по който реших задачата е най-удачен и затова искам да видя и други варианти.

function sort(input) {
  let array = input.map(Number).sort(function(a, b) {
    return a - b;
  });
  let arrayCopy = array.slice(0);
  let result = [];

  for (let i = 0; i < array.length; i++) {
    result.push(arrayCopy[arrayCopy.length - 1]);
    if (result.length === array.length) {
      break;
    }
    result.push(arrayCopy[0]);

    if (result.length === array.length) {
      break;
    }
    arrayCopy.shift();

    arrayCopy.pop();
  }

  console.log(result.join(" "));
}
sort([1, 10, 9, 15, 2, 3, 4]);

 

Тагове:
0
JavaScript Fundamentals
JivkoJelev avatar JivkoJelev 235 Точки

Ето едно по-кратко решение: 
 

function solve(input){
   let result = [];
   array = input.sort((a, b) => a - b);
   while(array.length !== 0){
     result.push(array[array.length-1]) && array.pop();
     result.push(array[0]) && array.shift();
   }
console.log(result.join(' '));
}
1
17/06/2019 22:24:07
KristianZanev avatar KristianZanev 16 Точки

Интересен подход, благодаря!

0