27. Remove Element
来源:互联网 发布:淘宝短信轰炸机 编辑:程序博客网 时间:2024/05/22 10:37
Click here to try this problem on Leetcode
Given an array and a value, remove all instances of that value in place and return the new length.
Do not allocate extra space for another array, you must do this in place with constant memory.
The order of elements can be changed. It doesn’t matter what you leave beyond the new length.
Example:
Given input array nums = [3,2,2,3], val = 3
Your function should return length = 2, with the first two elements of nums being 2.
Hint:
Try two pointers.
Did you use the property of “the order of elements can be changed”?
What happens when the elements to remove are rare?
思路:这道题目与 26.Remove Duplicates from Sorted Array
思路和做法都十分相似。方法是仍然使用i
和index
两个从零开始的下标,使用for
循环来遍历nums
数组,每当nums[i] != val
, 就把这个nums[i] 赋给nums[index]
。同样,还是需要注意当nums
数组为空的情况。
代码如下:
class Solution {public: int removeElement(vector<int>& nums, int val) { if(nums.empty()) return 0; int index = 0; for(int i = 0; i < nums.size(); i++){ if(nums[i] != val) nums[index++] = nums[i]; } return index; //因为上一行是index++,所以返回的index已经+1,就是新数组长度 }};
相关题目:
26.Remove Duplicates from Sorted Array
- [LeetCode]27.Remove Element
- LeetCode --- 27. Remove Element
- LeetCode 27.Remove Element
- [Leetcode] 27. Remove Element
- 27.Remove Element
- [Leetcode] 27.Remove Element
- 27. Remove Element
- 27. Remove Element
- 【leetcode】27. Remove Element
- 【leetcode】27. Remove Element
- 27. Remove Element
- 27. Remove Element
- 27. Remove Element
- Leetcode 27. Remove Element
- 27. Remove Element
- LeetCode 27. Remove Element
- 27. Remove Element LeetCode
- 27. Remove Element
- 冒泡排序思路与代码实现(三种版本)
- java hashmap 源码分析
- 思考卷积神经网络(CNN)中各种意义
- DOM、BOM相关方法及属性
- oj之输入输出
- 27. Remove Element
- 在linux里如何建立一个快捷方式,连接到另一个目录
- JSP Exception内置对象
- 384.Longest Substring Without Repeating Characters-最长无重复字符的子串(中等题)
- Linux下SublimeText2中文无法输入问题解决
- 控件之DatePicker、TimePicker学习
- 【React Native学习之路】环境安装Window版
- WordPress更换主题后出现500错误的解决办法
- springMVC处理静态资源——jquery文件配置正确访问不到404错误信息