Leetcode 283.移动零 By Python

Posted MartinLwx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 283.移动零 By Python相关的知识,希望对你有一定的参考价值。

思路

我们可以用python的list comprehension来取出所以非0的元素,而且这样取出来会保持原有的相对顺序,再统计先后变化的长度,补上相应的0即可

代码

class Solution(object):
    def moveZeroes(self, nums):
        """
        :type nums: List[int]
        :rtype: void Do not return anything, modify nums in-place instead.
        """
        a = [i for i in nums if i!=0]
        delta = len(nums)-len(a)
        zero = [0 for i in range(delta)]
        nums[:] = a[:] + zero[:]

ps.这才是pythonic的代码啊哈哈哈哈哈哈哈

以上是关于Leetcode 283.移动零 By Python的主要内容,如果未能解决你的问题,请参考以下文章

前端与算法 leetcode 283. 移动零

LeetCode283.移动零

leetcode-283-移动零

LeetCode 283. 移动零

LeetCode 283 移动零

Leetcode 283.移动零