小编给大家分享一下LeetCode如何移除元素,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
给定一个数组nums和一个值val,原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。要求仅使用O(1)额外空间,可以改变数组元素顺序。如:输入[3,2,2,3],3,返回2。
依次判断列表中元素是否与val相等,相等则剔除。
跟LeetCode刷题DAY 23:删除排序数组中的重复项中情况类似,从左向右查找时要注意数组长度变化产生的影响,具体代码如下,为避免这个影响使得代码更简单可从右向左查找,此处暂不展示代码。class Solution: def removeElement(self, nums: List[int], val: int) -> int: if len(nums)==0: return i=0 while i < len(nums): if nums[i] == val: #删除列表中某位置的值 nums.pop(i) else: i+=1 return len(nums)
看完了这篇文章,相信你对“LeetCode如何移除元素”有了一定的了解,如果想了解更多相关知识,欢迎关注天达云行业资讯频道,感谢各位的阅读!