【LeetCode】27. 移除元素

【LeetCode】27. 移除元素_第1张图片

 题目大概意思是剔除nums数组中出现的所有val值。可以用快慢双指针法来做。

快的指针在前面遍历找值不为val的元素的下标,慢的负责接收值不为val的元素,并及时更新数组。

class Solution {
    public int removeElement(int[] nums, int val) {
        //快慢指针法
        int fast = 0;
        int slow = 0;
        int len = nums.length;
        while(fast < len) {
            if(nums[fast] != val) {
                nums[slow] = nums[fast];
                slow++;
            }
            fast++;
        }
    return slow;
    }
}

【LeetCode】27. 移除元素_第2张图片

 

你可能感兴趣的:(LeetCode,leetcode,算法,数据结构,java)