一、比较排序
1、选择排序
class Solution:
def select_sort(self, dict_input):
#1、第一层循环,循环元组中的每个元素
for x in range(len(dict_input)):
min_index = x
#2、第二层循环,循环元组中每个元素加1
for y in range(x+1,len(dict_input)):
if dict_input[min_index] > dict_input[y]:
min_index = y
temp = dict_input[x]
dict_input[x] = dict_input[min_index]
dict_input[min_index] = temp
return dict_input
if __name__ == '__main__':
ssort = Solution()
dict_out = ssort.select_sort([1,9,6,8,77,8,44])
print(dict_out)
2、插入算法
class Solution:
def insert_sort(self, dict_input):
#1、第一层循环,循环元组中的每个元素
for x in range(len(dict_input)):
#2、第二层循环,按个前移给小弟挪位置
if x == 0:
continue
if x == 1:
list_f = [0]
else:
list_f = range(x-1, -1, -1)
con_val = dict_input[x]
min_index = x
for y in list_f:
if dict_input[y] > con_val:
dict_input[y+1] = dict_input[y]
min_index = y
dict_input[min_index] = con_val
return dict_input
if __name__ == '__main__':
isort = Solution()
dict_out = isort.insert_sort([3,2,0,5,1,4,1])
print(dict_out)
3、归并排序-合并有序列表