美文网首页
双指针1 移动零元素到末尾

双指针1 移动零元素到末尾

作者: 是黄小胖呀 | 来源:发表于2020-08-05 23:18 被阅读0次

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

示例:

输入: [0,1,0,3,12]

输出: [1,3,12,0,0]

说明:

必须在原数组上操作,不能拷贝额外的数组。

尽量减少操作次数。

思路一:

双指针

(1)由变量 “cur” 表示的快速指针负责处理新元素。

(2)如果新找到的元素不是 0,我们就在最后找到的非 0 元素之后记录它。最后找到的非 0 元素的位置由慢指针 “lastnonzerofoundat” 变量表示。当我们不断发现新的非 0 元素时,我们只是在 “lastnonzerofoundat+1” 第个索引处覆盖它们。

代码如下:

class Solution:

    def moveZeroes(self, nums: List[int]) -> None:

        """

        Do not return anything, modify nums in-place instead.

        """

        j = 0

        if len(nums)==1:

            return nums

        else:

          for i in range(len(nums)):

            if nums[i] != 0:

                   nums[j]=nums[i]

                   j=j+1

                   #nums[i]=nums[j]

          for k in range(j,len(nums)):

                   nums[k]=0

          return nums

思路二:
???

相关文章

  • 双指针1 移动零元素到末尾

    给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [...

  • 283。移动零至末尾元素(单指针)

    移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入...

  • 双指针--移动零

    目录[https://www.jianshu.com/p/85e18c21317a] 题号[https://lee...

  • 移除数组中的元素

    移除数组中的元素,双指针算法,利用元数组元素覆盖的方式,利用指针移动到指定的元素,即可一次便利实现

  • 2019-02-21 Day 47

    1.移动零来源 LeetCode给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素...

  • php一些常用参数

    一、指针 1、feof 判断指针是否末尾或出错-----返回true 一般用在判断指针没有到末尾时,输出内容...

  • 数组4 移动零(移动所有零到数组末尾)?

    给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [...

  • PHP常用数组函数

    1、数组中元素指针的移动 next:向后移动,指向下一个元素 prev:向前移动,指向前一个元素 end:指向最后...

  • php中常用的数组函数

    1、数组中元素指针的移动 next:向后移动,指向下一个元素 prev:向前移动,指向前一个元素 end:指向最后...

  • 数组常用函数

    16:数组常用函数: 1、数组中元素指针的移动current: 当前元素;next:向后移动,指向下一个元素pre...

网友评论

      本文标题:双指针1 移动零元素到末尾

      本文链接:https://www.haomeiwen.com/subject/owklrktx.html