排序算法--选择排序

1,在一个未排序的数组或者集合中,依次比较,依次将最小的放在排序后的起始位置(从小至大),或者将最大的放在排序后的起始位置(从大至小)。

     int [] a = {12,3,4,55,66,7,8,90};

第一轮比较:

a[0] 依次和 a[1],a[2],[3]......a[n-1]比较,将最小的的放在初始位置。

第二轮比较:

a[1] 依次和 a[2],a[3],a[4]......a[n-1]比较,将最小的放在a[1]位置。

.

.

.

第n-2 轮比较:

a[n-2] 和 a[n-1] 比较,小的放在a[n-2] 位置,大的放在a[n-1]位置。

 

一共遍历n-1 次,时间复杂度O(n*n)

 

代码如下:

 

 

posted @ 2018-08-27 11:07  Chris,Cai  阅读(157)  评论(0编辑  收藏  举报