首页 > 编程语言 > 详细

选择排序

时间:2016-10-20 07:43:00      阅读:203      评论:0      收藏:0      [点我收藏+]

先上代码:

void SelectSort(int *array, int length)
{
    int i,j,t,min;

    for(i=0; i<length; i++)
    {
        min = i;
        for(j=i+1; j<length; j++)
        {
            if(array[min] > array[j])
            {
                min = j;
            }
        }
        if(min != i)
        {
            t = array[i];
            array[i] = array[min];
            array[min] = t;
        }
    }
}

对于一个长度为n的数组:

需要比较(n-1)n/2次,时间复杂度为 技术分享 

最好的情况下,不需要进行数组元素交换;最坏的情况下,需要进行(n-1)次数组元素交换。

选择排序

原文:http://www.cnblogs.com/mcmc/p/5979270.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!