1 min read

Leetcode刷題日記 - #27 Remove Elements

Leetcode刷題日記 - #27 Remove Elements
Photo by Joan Gamell / Unsplash

題目請自行上Leetcode閱讀:https://leetcode.com/problems/remove-element/

  1. Return Value, k:這題跟#26 Remove Duplicates from Sorted Array是差不多的,關鍵就是到k為指,你沒有val的Array的尾。

做法也是一樣的,我怎麼想到這個結論可以看#26 Remove Duplicates from Sorted Array的日記,一樣是有一個擔任loop array工作的pointer,而k則是負責指向「沒有val的尾」,這題比#26簡單,不用擔心index out of bound的問題

class Solution:
    def removeElement(self, nums: List[int], val: int) -> int:
        k = 0
        for n in range(len(nums)):
            if nums[n] != val:
                nums[k] = nums[n]
                k += 1
        return k

結語:這題的重點在k是指向「沒有val的尾」。