python将给定数列中零放到末尾
时间: 2024-02-11 08:13:09 浏览: 112
可以使用双指针的方法来实现将给定数列中的零放到末尾。具体实现步骤如下:
1. 定义两个指针i和j,初始值都为0,i表示当前遍历到的位置,j表示第一个0应该放置的位置。
2. 遍历数列,当数列中的元素不为0时,将其放置到j位置,同时将j向后移动一位。
3. 当遍历到数列中的元素为0时,i继续向后移动,j不动。
4. 最后将j位置到数列末尾的元素全部置为0即可。
下面是示例代码实现:
```
def move_zeros(nums):
i, j = 0, 0
while i < len(nums):
if nums[i] != 0:
nums[j] = nums[i]
j += 1
i += 1
while j < len(nums):
nums[j] = 0
j += 1
return nums
```
可以通过以下代码进行测试:
```
nums = [0, 1, 0, 3, 12]
print(move_zeros(nums)) # [1, 3, 12, 0, 0]
```
阅读全文