使用Python实现选择排序算法
发布时间:2023-12-04 21:42:49
选择排序是一种简单且直观的排序算法。它的原理是每次找到最小的元素,然后放到已排序序列的末尾。通过重复此过程,直到整个数组排序完成。
下面是使用Python实现选择排序算法的代码:
def selection_sort(arr):
n = len(arr)
for i in range(n):
# 找到未排序序列中最小的元素
min_index = i
for j in range(i+1, n):
if arr[j] < arr[min_index]:
min_index = j
# 将最小元素交换到已排序序列的末尾
arr[i], arr[min_index] = arr[min_index], arr[i]
return arr
使用选择排序算法对一个列表进行排序的例子:
arr = [64, 25, 12, 22, 11]
sorted_arr = selection_sort(arr)
print("排序后的数组:", sorted_arr)
运行结果为:
排序后的数组: [11, 12, 22, 25, 64]
在这个例子中,我们要对列表[64, 25, 12, 22, 11]进行排序。首先,我们找到最小的元素11,并将其放到已排序序列的末尾。接下来,我们找到剩余部分中最小的元素12,再将其放到已排序序列的末尾。我们重复这个过程,直到整个数组排序完成。
选择排序的时间复杂度为O(n^2),其中n是数组的长度。因此,选择排序不适合对大规模数据进行排序,但对于小规模的数据排序是可行的。
总结起来,选择排序是一种简单但效率较低的排序算法。它的原理是每次找到最小的元素,然后放到已排序序列的末尾。虽然选择排序的时间复杂度较高,但在处理小规模数据时仍然是一个有效的选择。
