【LeetCode】27.移除元素

要求:

(1) 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。

(2) 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。

(3) 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

官方也给出了示例:

给定 nums = [3,2,2,3], val = 3,

函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。

你不需要考虑数组中超出新长度后面的元素。

解题思路:因为要求是把数组中和给的值相同的元素剔除掉,所以要对数组中的元素进行遍历,遍历其是否和给定的值相等,如果不相等把其保存。

class Solution:
    def removeElement(self, nums: List[int], val: int) -> int:
        for i in nums:
            if val ==nums[i]:
                nums.remove(val)
            else:
                return nums[i]

 

posted @ 2020-01-01 15:41  爱学习的虾  阅读(141)  评论(0编辑  收藏  举报