移除元素

移除元素

1. 题目描述

提示
题目链接:https://leetcode.cn/problems/remove-element/description/

2. 解题思路

核心总结

  • 核心思想:使用快慢指针。快指针遍历数组,慢指针在前面等待,符合条件时进行原地修改。

💡 易错点

不能使用数组复制(局部更改失效),必须对原数组进行原地操作以影响全局。

3. 代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class Solution {

public int removeElement(int[] nums, int val) {

int count = 0;

for(int i = 0;i<nums.length;i++){

if(nums[i] == val){

continue;

}else{

nums[count] = nums[i];

count++;

}

}

return count;

}

}

4. 复杂度分析

  • 时间复杂度:$O(n)$
  • 空间复杂度:$O(1)$

5. 总结与反思


本文已被观测了
« 上一篇 主页 下一篇 »