【Leetcode】27 Remove Element

//题目:

Given an array nums and a value val, 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 by modifying the input array in-place with O(1) extra memory.

The order of elements can be changed. It doesn't matter what you leave beyond the new length.

给定一个数组和一个值val,将所有与val值相等的元素去除,返回当前个数

class Solution {
public:
	//if无论几行都要打大括号
	int removeElement(vector<int>& nums, int val) {
		for(int i = 0; i<nums.size(); i++){
				if(nums[i] == val){
					nums.erase(nums.begin()+i);
					i--;  //删除元素后改变下标  用i=nums.begin() i!=nums.end()就不用,很方便,但是不知道下标
				}
			}
		return nums.size();
	}
};


猜你喜欢

转载自blog.csdn.net/zerlina98/article/details/79782169