Untitled
unknown
plain_text
2 years ago
982 B
6
Indexable
#include <algorithm> #include <vector> #include <cassert> class Solution { public: int removeElement(vector<int>& nums, int val) { int i = 0; int j = 0; while (i < nums.size()) { if (nums[i] != val) { nums[j] = nums[i]; j++; } i++; } return j; } int main() { vector<int> nums1 = {3, 2, 2, 3}; int val1 = 3; vector<int> expectedNums1 = {2, 2}; int k1 = removeElement(nums1, val1); assert(k1 == expectedNums1.size()); sort(nums1.begin(), nums1.begin() + k1); assert(equal(nums1.begin(), nums1.begin() + k1, expectedNums1.begin())); vector<int> nums2 = {0, 1, 2, 2, 3, 0, 4, 2}; int val2 = 2; vector<int> expectedNums2 = {0, 0, 1, 3, 4}; int k2 = removeElement(nums2, val2); assert(k2 == expectedNums2.size()); sort(nums2.begin(), nums2.begin() + k2); assert(equal(nums2.begin(), nums2.begin() + k2, expectedNums2.begin())); return 0; } };
Editor is loading...