python3实现冒泡排序和插入排序
程序员文章站
2022-06-11 19:26:42
...
# 普通冒泡排序 (排序:由小到大)
import random
list_data = []
for i in range(10):
list_data.append(random.randint(0,20))
list_len = len(list_data)-1
for i in range(10):
for j in range(list_len-i):
if list_data[j]>list_data[j+1]:
tmp=list_data[j]
list_data[j]=list_data[j+1]
list_data[j+1]=tmp
print (list_data)
#-------------------------------------------------------------------------------------# 插入排序 (比冒泡更高效,排序:由小到大)
import random
list_data = []
for i in range(10):
list_data.append(random.randint(0,20))
list_len = len(list_data)
for i in range(1,list_len):
j=0
#分水岭:前面是j的有序list,后面是需要排序的无序list
while(j<i):
if(list_data[j]>list_data[i]):
break
j=j+1
tmp=list_data[i]
k=i
#每取一个值,排序一次,将list中元素位置移动一次
while(k>j):
list_data[k]=list_data[k-1]
k=k-1
list_data[k] = tmp
print (list_data)
下一篇: 记录一次运维