字节 - 将数组的0移动到最后

// 双指针模式
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));

你可能感兴趣的:(字节 - 将数组的0移动到最后)