Move Zeroes (JS)
1097 ワード
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;
}
Reference
この問題について(Move Zeroes (JS)), 我々は、より多くの情報をここで見つけました https://velog.io/@devmomo/Move-Zeroes-JSテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol