接外包,有相关需求的可以联系我:Telegram | Email

Move Zeroes

该文章创建(更新)于03/15/2022,请注意文章的时效性!

Given an integer array nums, move all 0's to the end of it while maintaining the relative order of the non-zero elements.

Note that you must do this in-place without making a copy of the array.

Solution

Double Pointer / Fast And Slow Pointer

Code

  • submit code
class Solution:
    def moveZeroes(self, nums: List[int]) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        slow = 0
        fast = 0

        while(fast < len(nums)):
            if(nums[fast] != 0):
                nums[slow] = nums[fast]
                slow += 1
            fast += 1

        for m in range(slow,len(nums)):
            nums[m] = 0
  • full code
class Solution:
    def moveZeroes(self, nums):

        slow = 0
        fast = 0

        while(fast < len(nums)):
            if(nums[fast] != 0):
                nums[slow] = nums[fast]
                slow += 1
            fast += 1

        for m in range(slow,len(nums)):
            nums[m] = 0

        # print(nums)

nums = [0,1,0,3,12]
S = Solution()
print(S.moveZeroes(nums))


👇 Share | 分享 👇


要不赞赏一下?

微信
支付宝
PayPal
Bitcoin

版权声明 | Copyright

除非特别说明,本博客所有作品均采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。转载请注明转自-
https://www.emperinter.info/2022/03/15/move-zeroes/


要不聊聊?

我相信你准备留下的内容是经过思考的!【勾选防爬虫,未勾选无法留言】

*

*



微信公众号

👉 NewsLetter ❤️ 邮箱订阅 👈

优惠码


阿里云国际版20美元
Vultr10美元
搬瓦工 | Bandwagon应该有折扣吧?
域名 | namesiloemperinter(1美元)