选择排序
Posted hycstar
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了选择排序相关的知识,希望对你有一定的参考价值。
## 选择排序需要执行n次时间为O(n)的操作,所以总时间为O(n2)
1 def find_smallest(arr): 2 """return the index of the smallest element""" 3 smallest = arr[0] 4 smallest_index = 0 5 for i in range(0, len(arr)): 6 if arr[i] < smallest: 7 smallest = arr[i] 8 smallest_index = i 9 return smallest_index 10 11 def selection_sort(arr): 12 sorted_arr = [] 13 for i in range(0, len(arr)): 14 smallest_index = find_smallest(arr) 15 sorted_arr.append(arr.pop(smallest_index)) 16 return sorted_arr 17 18 print(selection_sort([2,3,4,5,7,2,21,-2,-4,-9])) 19 # [-9, -4, -2, 2, 2, 3, 4, 5, 7, 21]
以上是关于选择排序的主要内容,如果未能解决你的问题,请参考以下文章
初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段