Python中的重复零
假设我们有一个固定长度的整数数组,我们必须复制每次出现的零,将其余元素移到右侧。
请注意,不会写入超出原始数组长度的元素。
因此,假设数组类似于[1,0,2,3,0,4,5,0],则在修改后它将为[1,0,0,2,3,0,0,4]
为了解决这个问题,我们将遵循以下步骤-
将arr复制到另一个数组arr2中,将i和j设置为0
当我<arr的大小-
arr[i]:=0
使我增加1
如果i<arr的大小,则arr[i]:=0
如果arr2[i]为零,则
elsearr[i]:=arr2[j]
将i和j加1
示例
让我们看下面的实现以更好地理解-
class Solution(object):
def duplicateZeros(self, arr):
arr2 = [i for i in arr]
i=0
j = 0
while i < len(arr):
if not arr2[j]:
arr[i] = 0
i+=1
if i<len(arr):
arr[i] = 0
else:
arr[i] = arr2[j]
j+=1
i+=1
return arr
ob1 = Solution()
print(ob1.duplicateZeros([1,0,2,3,0,4,5,0]))输入项
[1,0,2,3,0,4,5,0]
输出结果
[1,0,0,2,3,0,0,4]
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短