读入一个整数列表,把数值为零的元素移到列表尾部,其他元素的相对顺序不变。输出调整后的列表
时间: 2023-05-20 15:02:25 浏览: 211
易语言源码把数据库读入超级列表框.rar
可以使用双指针的方法,将非零元素依次往前移动,最后将剩余位置填充为零即可。
以下是示例代码:
def move_zeros(nums):
left, right = 0, 0
while right < len(nums):
if nums[right] != 0:
nums[left], nums[right] = nums[right], nums[left]
left += 1
right += 1
while left < len(nums):
nums[left] = 0
left += 1
return nums
# 示例
nums = [0, 1, 0, 3, 12]
print(move_zeros(nums)) # 输出 [1, 3, 12, 0, 0]
阅读全文