首页 > 技术文章 > C语言简单选择排序

xudongliang 2017-02-14 15:40 原文

#include <stdio.h>

int main(int argc, char const *argv[])
{
    // 将数组按照从小到大排序
    int a[] = {3, 5, 7, 4, 2, 9};
    int i, j;
    for(i = 0; i < 6; i++) {
        int min = a[i];
        int flag = i;
        for(j = i + 1; j < 6; j++) {
            // 挑选最小的元素
            if (min > a[j]) { 
                min = a[j];
                flag = j;
            }
        }
        a[flag] = a[i];
        a[i]    = min;
    }


    int init;
    for(init = 0; init < 6; init++) {
        printf("%d\n", a[init] );
    }
    return 0;
}

 

如果要将数组从小到大排列,简单选择排序的过程是首先从数组中选一个最小的元素放到第一位;

然后从剩下的元素中在选一个最小的元素,放到第二位,依次类推

 

推荐阅读