文章目录
- 题目
 - 方法一:快慢指针
 
题目

方法一:快慢指针

        int fast = 0;// 快指针  用于扫描需要的元素
        int slow = 0;//慢指针  用于记录需要存放元素的位置
 
class Solution {
// 快慢指针
    public int removeElement(int[] nums, int val) {
        int fast = 0;// 快指针  用于扫描需要存放的元素
        int slow = 0;//慢指针  用于记录需要存放元素的位置
        while(fast < nums.length){
            if(nums[fast] == val)  fast++;//如果fast指向元素==val  直接移动fast
            else{//如果fast指向元素!=val  则将fast位置的元素放到slow  并同步移动slow  
                nums[slow] = nums[fast];
                fast++;
                slow++;
            }
        }
        return slow;//最后slow就是删除元素之后的数组的最后一个元素的位置
    }
}
                


















