选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
时间复杂度
假设有n个数的一个链表,为了确定第一个位置的数,需要比较n-1次;确定第2个位置的数需要比较n-2次,依次类推最后一个位置的数需要比较0次。那么总的比较次数N=(n-1)+(n-2)+...+1=n*(n-1)/2。
/---------------代码部分------------------/
这个程序很好的实现了选择排序的步骤。首先,你可以用r键重新生成一个乱序的数列;当按下s键时,开始采用选择排序进行数列的排序。排序的过程中演示了如何从第一个位置开始为当前排序位置选择最小值,并在一轮比较之后将当前排序位置和最小值位置进行数列值的交换。
通过这个程序,小朋友可以很好的理解选择排序的算法过程。
网友评论