Posted onEdited onInLeetCodeDisqus: Symbols count in article: 562Reading time ≈1 mins.
O(n)
1 2 3 4 5 6 7 8
classSolution: defremoveElement(self, nums: List[int], val: int) -> int: i = 0 for x in nums: if x != val: nums[i] = x i += 1 return i
1 2 3 4 5 6 7 8 9 10 11 12
classSolution { public: intremoveElement(vector<int>& nums, int val){ int i = 0; for (int x : nums) { if (x != val) { nums[i++] = x; } } return i; } };
1 2 3 4 5 6 7 8 9 10 11 12 13
classSolution { public: intremoveElement(vector<int>& nums, int val){ int n = nums.size(); for (int i = n - 1; i >= 0; --i) { if (nums[i] == val) { swap(nums[i], nums[--n]); nums.pop_back(); } } return nums.size(); } };