美文网首页
选择排序算法(C语言版)

选择排序算法(C语言版)

作者: lkmc2 | 来源:发表于2017-12-10 01:07 被阅读10次
#include<stdio.h>

/**
* 选择排序 
* @param *a 数组 
* @param n 数组长度 
*/ 
void selectSort(int *a, int n) 
{
    int i, j, min, temp;
    for(i = 0; i < n; i++) {
        min = i; //选择i值为最小值
        
        for(j = i + 1; j < n; j++)
            if(a[j] < a[min]) //比较当前最小值与下标为j的值 
                min = j; //如果下标为j的值比当前最小值小,将j标记为当前最小值 
        
        temp = a[i]; //交换下标为i与最小值下标的值 
        a[i] = a[min];
        a[min] = temp;
    }
}

int main() 
{
    int i,a[10] = {10,9,8,7,6,5,4,3,2,1};
    selectSort(a,10); //选择排序 
    
    for(i=0;i<10;i++) //打印排序后的数组 
        printf("%d ",a[i]);
    
    return 0;
} 

相关文章

网友评论

      本文标题:选择排序算法(C语言版)

      本文链接:https://www.haomeiwen.com/subject/xwlmixtx.html