排序算法
插入排序
把无序列表中的元素依次插入有序列表中
nums=[5,33,6,4,100,21,82]
for i in range(1,len(nums)):
for j in range(i):
if(nums[j]>nums[i]):
ins=nums[i]
nums.pop(i)
nums.insert(j,ins)
break
print(nums)
选择排序
在原列表中依次找出最小的元素,放入有序列表中
nums=[35,55,64,43,14,25,85,79]
res=[]
while (len(nums)!=0):
minlnd=0
for i in range(1,len(nums)):#找出真正的最小值
if(nums[i]<nums[minlnd]):
minlnd=i
temp=nums[minlnd]
nums.pop(minlnd)
res.append(temp)
print(res)
选择排序改进算法
nums=[313,5,26,34,21,24,88,79]
for i in range(len(nums)-1):
minlnd=i
for j in range(i,len(nums)):
if(nums[j]<nums[minlnd]):
minlnd=j
nums[i],nums[minlnd]=nums[minlnd],nums[i]
print(nums)