정수 배열을 취하는 JavaScript 함수를 작성해야 합니다.
이 함수는 모든 홀수가 먼저 오고 그 다음에 짝수가 오도록 배열을 정렬해야 합니다.
자체 내에서 홀수 또는 짝수의 순서는 그다지 중요하지 않지만 모든 홀수는 짝수보다 먼저 와야 합니다.
예를 들어 -
입력 배열이 -
인 경우const arr = [0, 2, 4, 6, 8, 0, 1, 3, 5, 7, 9, 1];
그런 다음 정렬된 배열은 다음과 같아야 합니다(모든 확률이 짝수보다 앞서는 많은 솔루션 중 하나입니다) -
const output = [ 1, 3, 5, 7, 9, 1, 0, 2, 4, 6, 8, 0 ];
예시
const arr = [0, 2, 4, 6, 8, 0, 1, 3, 5, 7, 9, 1]; const sortOddEven = (arr = []) => { let i = 0, j, temp; while (i < arr.length - 1) { j = i; while (!(arr[j] % 2) && arr[j + 1] % 2) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; if (!j) { break; }; j--; }; i++; }; }; sortOddEven(arr); console.log(arr);
출력
콘솔의 출력은 -
[ 1, 3, 5, 7, 9, 1, 0, 2, 4, 6, 8, 0 ]