LeetCode—27

Approach

# 紀錄狀態: 如果是題目要刪掉的數字就放到陣列的前面取代原先的數字

# 邊界條件: 不會覆蓋到還沒判定的數字

Time Complexity

# n = nums.size()
O(n)

Space Complexity

O(1)

Code

class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int pointer = 0;

        for (int i = 0 ; i < nums.size() ; i++) {
            if (nums[i] != val) {
                nums[pointer++] = nums[i];
            }
        }

        return pointer;
    }
};