算法步骤
首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。
再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。
重复第二步,直到所有元素均排序完毕。
时间复杂度
时间复杂度,是算法的时间复杂度是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。
第一次需要检查n个元素,随后需要检查的次数依次是n-1,n-2,…,2和1,等差数列求和,因此运行时间为O(n * 1/2 * n)。但大O表示法省略1/2这样的常数,因此记为O(n * n)。