Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript의 대체 셔플

<시간/>

대체 셔플

JavaScript에서 셔플링된 배열은 숫자가 인덱싱되어 가장 큰 숫자 다음에 가장 작은 요소가 오고, 두 번째로 큰 요소 다음에 두 번째로 작은 요소가 오는 식으로 숫자가 인덱싱되는 배열입니다.

예:입력 배열이 -

인 경우
const arr = [11, 7, 9, 3, 5, 1, 13];

그러면 출력은 &마이너스

여야 합니다.
const output = [13, 1, 11, 3, 9, 5, 7];

예시

다음은 코드입니다 -

const arr = [11, 7, 9, 3, 5, 1, 13];
const sorter = (a, b) => a - b;
const alternateShuffle = (arr) => {
   const array = arr
   .slice()
   .sort(sorter);
   array.sort((a, b) => a-b);
   for(let start = 0; start < array.length; start += 2){
      array.splice(start, 0, array.pop());
   }
   return array;
};
console.log(alternateShuffle(arr));

출력

이것은 콘솔에서 다음과 같은 출력을 생성합니다 -

[
   13, 1, 11, 3,
   9, 5,  7
]