// 双指针模式
let arr = [0, 1, 0, 5, 13];
function moveZero(arr) {
let left = 0,
right = 0;
while (right < arr.length - 1) { // arr.length - 1 = 4
right++
if (arr[left] === 0 && arr[right] !== 0) { // 左边是0 右边不是0 交换位置
let temp = arr[left]
arr[left] = arr[right]
arr[right] = temp
left++
}
console.log(`left:${left} right: ${right}`)
}
return arr
}
console.log(moveZero(arr));
网友评论