基本思想:从未排序的序列中找到一个最小的元素,放到第一位,再从剩余未排序的序列中找到最小的元素,放到第二位,依此类推,直到所有元素都已排序完毕。假设序列元素总共n+1个,则我们需要找n轮,就可以使该序列排好序。在每轮中,我们可以这样做:用未排序序列的第一个元素和后续的元素依次相比较,如果后续元素小,则后续元素和第一个元素交换位置放到,这样一轮后,排在第一位的一定是最小的。这样进行n轮,就可排序。
def selectionSort(list): list_length = len(list) for i in range(0,list_length-1): for j in range(i+1,list_length): if list[i] > list[j]: list[i],list[j] = list[j],list[i] return list print(selectionSort([4,3,2,5,6]))
原文地址:https://www.cnblogs.com/mumei/p/9345453.html
时间: 2024-10-29 16:56:31