정수 배열이 주어졌다고 가정해 봅시다. 목록을 제자리에서 수정하여 배열 뒤에 모든 0을 넣는 함수를 작성해야 합니다.
함수는 다른 요소의 상대적 순서가 동일하게 유지되는 방식으로 이 작업을 수행해야 합니다.
예를 들어 -
입력 배열이 -
인 경우const arr = [0, 11, 0, 22, 67];
그런 다음 배열을 -
로 수정해야 합니다.const output = [11, 22, 67, 0, 0];
예시
다음은 코드입니다 -
const arr = [0, 11, 0, 22, 67]; const moveZeroToEnd = (arr = []) => { const swap = (array, ind1, ind2) => { const temp = array[ind1]; array[ind1] = array[ind2]; array[ind2] = temp; }; let j = 0; for (let i = 0; i < arr.length; ++ i) { if (arr[i] !== 0) { swap(arr, i, j++); } } while (j < arr.length) { arr[j++] = 0; }; }; moveZeroToEnd(arr); console.log(arr);
출력
다음은 콘솔 출력입니다 -
[11, 22, 67, 0, 0]