Move Zeroes (JS)


Move Zeroes

문제 분석整数を要素とする配列numsが与えられている場合、0以外の要素の順序を維持し、ゼロの要素を配列の末尾に移動するソリューションが作成されます.주의사항1.arrayをコピーせず、自分の配列で解決풀이법1.単純for文
2.0を移動するときに所定の配列の順序を変更したくない場合は、=>bubble sort
ゼロ以外の数を順番に前に移動する場合は、ソート後のソート順を考慮する必要はありません.풀이ゼロ以外の数値を指すポインタ1、常に0を指すポインタ2
ポインタ1がゼロ以外の数値を指す場合、swap要素
function moveZeroes(nums){
// 포인터 2 (파란색)
let wIdx=0;
// 포인터 1 (주황색)
for ( let idx=0; idx<nums.length; idx++ ){
	if(nums[idx]!==0){
    swap(nums[wIdx],nums[idx]);
    wIdx++;
}
}
}
풀이
var moveZeroes = function(nums) {
    let wIdx = 0;
    for ( let Idx =0; Idx<nums.length; Idx++ ){
        if(nums[Idx]!==0) {
            swap(Idx,wIdx,nums);
            wIdx++;
        }
    }
};
function swap(numsIdx,numswIdx,nums) {
    let num = nums[numsIdx];
    nums[numsIdx] = nums[numswIdx];
    nums[numswIdx] = num;
}