LeetCode27--移除元素

 1 '''
 2 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。
 3 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
 4 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。
 5 示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。
 6 你不需要考虑数组中超出新长度后面的元素。
 7 '''
 8 
 9 
10 class Solution:
11     def removeElement(self, nums, val):
12         """
13         :type nums: List[int]
14         :type val: int
15         :rtype: int
16         """
17         i = 0
18         l = len(nums)
19         count = 0
20 
21         for j in range(l):
22             if val != nums[j]:
23                 nums[i] = nums[j]
24                 i += 1
25                 count += 1
26             else:
27                 continue
28         print(nums)
29         return count
30 
31 
32 if __name__ == '__main__':
33     n = [3]
34     v = 3
35     ret = Solution().removeElement(n, v)
36     print(ret)

 

posted @ 2018-12-03 15:50  浅尝辄止易初心不改难  Views(169)  Comments(0Edit  收藏  举报