2. 简单选择排序

图解选择排序

定义

从无序区的头部开始与后面的元素两两比较,找出极值被放置的位置,之后将其放置在无序区的一段。 直到所有元素均排序完毕。

效率

最坏时间复杂度 O(n^2) 最优时间复杂度 O(n^2) 平均时间复杂度 O(n^2)

代码实现

nums = [1, 9, 8, 5, 6, 7, 4 , 3, 2]
length = len(nums)
for i in range(length-1):
    max_index = i
    for j in range(i+1,length):
        if nums[max_index] < nums[j]:
            max_index = j
    if i != max_index:
        nums[i],nums[max_index] = nums[max_index],nums[i]

Last updated