选择排序法python
时间: 2023-11-07 07:04:16 浏览: 98
选择排序是一种简单直观的排序算法。它的基本思想是每次从待排序的元素中选择最小的元素,并将其放置在已排序序列的末尾。具体实现过程如下:
1. 遍历待排序序列,从第一个元素开始,将其视为当前最小元素。
2. 在剩余的未排序序列中,依次与当前最小元素进行比较,找到最小的元素。
3. 将最小元素交换到已排序序列的末尾。
4. 重复步骤2和步骤3,直到完成所有元素的排序。
以下是用Python实现选择排序的代码:
```
def selection_sort(array):
for i in range(len(array)-1):
min_index = i
for j in range(i + 1, len(array)):
if array[j] < array[min_index]:
min_index = j
if min_index != i:
array[i], array[min_index] = array[min_index], array[i]
return array
if __name__ == '__main__':
array = [10, 17, 50, 7, 30, 24, 27, 45, 15, 5, 36, 21]
print(selection_sort(array))
```
该算法的时间复杂度为O(n^2),其中n为待排序序列的长度。选择排序是一种不稳定的排序算法,即存在相等的元素时,相对位置可能会发生改变。
阅读全文