python:输入随机数组,两两交换,使其从小到大排序


这个是对数组应用的检测,以下是代码部分:
方法一:

x_list = 0
y_list = 1
jump_num = 0
rounds = 0
num = input('请输入数组(以空格隔开)')
num_list = [int(n) for n in num.split()]
print('你输入的数组:',num_list)
while True:
while y_list < len(num_list):
if num_list[x_list] <= num_list[y_list]:
x_list += 1
y_list += 1
elif num_list[x_list] > num_list[y_list]:
tmp = num_list[x_list]
num_list[x_list] = num_list[y_list]
num_list[y_list] = tmp
x_list += 1
y_list += 1
if y_list == len(num_list):
x_list = 0
y_list = 1
rounds += 1
print('%d轮为:'%rounds,num_list)
while True:
if y_list == len(num_list) :
jump_num = 1
break
elif num_list[x_list] <= num_list[y_list]:
x_list += 1
y_list += 1
elif num_list[x_list] > num_list[y_list]:
x_list = 0
y_list = 1
break
if jump_num == 1:
print('经过%d轮,最终为:'%rounds,num_list)
break
以下是结果:

 方法二:

num = input('请输入数组(以空格隔开)')
n_list = [int(n) for n in num.split()]
for i in range(1,len(n_list)):
for j in range(i):
if n_list[i] < n_list[j]:
tmp = n_list[i]
n_list[i] = n_list[j]
n_list[j] = tmp
print(n_list)
print('最终为:',n_list)


 方法三:

num = input('请输入数组(以空格隔开)')
nlist = [int(n) for n in num.split()]
nlist.sort()
print(nlist)

方法四:

rounder = 0
jump_num = 0
num = input('请输入数组(以空格隔开)')
list = [int(n) for n in num.split()]
print('你输入的数组:',list)
while True:
for i in range(1,len(list)):
for j in range(i-1,i):
if list[j] > list[i]:
tmp = list[j]
list[j] = list[i]
list[i] = tmp
rounder += 1
print('%d轮:'%rounder,list)
for x in range(1,len(list)+1):
if x == len(list):
jump_num = 1
elif list[x-1] > list[x]:
break
if jump_num == 1:
print('经过%d轮,最终结果为:'%rounder,list)
break