- 1. 题目链接
- 2. 题目描述
- 3. 解题方法
- 4. 代码
1. 题目链接
27. 移除元素
2. 题目描述
3. 解题方法
- 暴力法直接解决,用双层for循环,外层for循环找val,内层for循环做删除操作。
- 双指针法,fast和slow。
- fast找不是val的值,找到之后覆盖slow指针指向的值,然后同步往后走,直到整个数组遍历结束。
4. 代码
class Solution {
public:
int removeElement(vector<int>& nums, int val)
{
int fast = 0, slow = 0;
while(fast < nums.size())
{
if(nums[fast] == val) fast++;
else nums[slow++] = nums[fast++];
}
return slow;
}
};
最后附上我的打卡记录,希望各位大佬可以监督我。