0
点赞
收藏
分享

微信扫一扫

LeetCode刷题——27. 移除元素


题目

LeetCode刷题——27. 移除元素_leetcode

思路

这个题目很简单,从数组中移除给定的元素即可,可以原地删除,也可以删除后的位置填零,但是0得放到最后。

代码

class Solution(object):
def removeElement(self, nums, val):
"""
:type nums: List[int]
:type val: int
:rtype: int
"""
# 通过del的方式,size是可变的
size = len(nums)
i = 0 #当前遍历的索引
while i < size:
if nums[i] == val:
del nums[i] # 删除
size -= 1 # 同时size-- ,此时i不需要动
else:
i += 1 #未找到,i++

return len(nums)

LeetCode刷题——27. 移除元素_i++_02


这里我直接删除数组的元素,这样导致数组大小会动态变化,不能通过​​range(len(size))​​的方式了。

写成了​​while​​循环,注意删除后的处理即可。


举报

相关推荐

0 条评论