我又来写长代码了,求超时:
N = int(input())
old = list(map(int, input().split()))
new = list(map(int, input().split()))
for i in range(1, N):
t = i
if new == old:
print('Insertion Sort')
while t >= 1:
if old[t] < old[t - 1]:
old[t], old[t - 1] = old[t - 1], old[t]
t -= 1
else:
break
if old == new:
t = t + 1
while t >= 1:
if old[t] < old[t - 1]:
old[t], old[t - 1] = old[t - 1], old[t]
t -= 1
else:
break
for i in range(N-1):
print(old[i], end=' ')
print(old[-1])
break
while t >= 1:
if old[t] < old[t-1]:
old[t], old[t-1] = old[t-1], old[t]
t -= 1
else:
break
if i == N - 1:
print("Heap Sort")
for i in range(1, len(new)):
if new[0] > new[i] and new[0] < new[i+1]:
new[0], new[i] = new[i], new[0]
m = i // 2 - 1
l = i - 1
p = 0
break
while True:
max = p
if p*2+1 <= l and new[p*2+1] > new[max]:
max = p*2+1
if p*2+2 <= l and new[p*2+2] > new[max]:
max = p*2+2
if max == p:
break
else:
new[p], new[max] = new[max], new[p]
p = max
for i in range(N-1):
print(new[i], end=' ')
print(new[-1])
break
没超时,不容易,汗~~~~~~~~~~