【发布时间】:2019-11-23 10:01:41
【问题描述】:
以下代码运行良好,并使用 XOR 查找丢失的连续数组数。
请问为什么第一个循环从1开始,到n结束,第二个循环从2开始,到n+2结束?
a = [1, 2, 3,4, 5, 6,8]
n = len(a)
x1 = a[0]
x2 = 1
for i in range(1, n):
## print (i)
#print (' ')
for i in range(1, n):
x1 = x1 ^ a[i]
print (a[i],x1)
print (' ')
for i in range(2, n + 2):
x2 = x2 ^ i
## print (i,x2)
##print (' ')
print (x1 ^ x2 )
【问题讨论】:
-
因为你这样做
-
因为
for i in range(1, n)和for i in range(2, n + 2)... -
真正的问题是什么?
-
为什么不能与 0..n 和 0..n+1 一起使用?