首页 > 试题广场 >

移动 0

[编程题]移动 0
  • 热度指数:3883 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个数组,请你实现将所有 0 移动到数组末尾并且不改变其他数字的相对顺序。

数据范围:数组长度满足 ,数组中的元素满足
示例1

输入

[1,2,0,3]

输出

[1,2,3,0]
示例2

输入

[1,2,3]

输出

[1,2,3]
示例3

输入

[0,0]

输出

[0,0]
#coding:utf-8
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 思路就是死循环遍历,直到把0放最后的次数等于里面的0的总数停下,而且每次找到0的时候下标要减1,否则下标继续加1.
# @param nums int整型一维数组 
# @return int整型一维数组
#
class Solution:
    def moveZeroes(self , nums ):
        # write code here
        c=0
        i=0
        while c!=nums.count(0):
            
            if nums[i]==0:
                del nums[i]
                nums.append(0)
                c+=1
                i-=1
            i+=1
        return nums
发表于 2022-04-09 23:05:12 回复(0)

问题信息

难度:
1条回答 1428浏览

热门推荐

通过挑战的用户

查看代码