数据结构与算法-学习笔记(8)-选择排序

菜鸟一枚,
刚刚学习数据结构与算法,
为了加深理解,
所以与同学们分享学习过程。

今天学习的是,
选择排序!!!

选择排序:n-i次关键字 的比较,
从n-i+1个记录中选出最小的记录,
并和i(1<=i<=n)个记录交换。

那么让代码说话

#include <stdio.h>

void slectsort(int k[],int n)
{
    int i,j,temp,min;
    for(i=0;i < n-1;i++)
    {
        min = i;   //设第一个为最小
        for(j = i+1;j < n;j++)  //若这个min的找到比他更小的,
        {                       //则更小的成为min,这min再与后面的比较,
            if(k[j]<k[min])     //一轮后这个min为数组中最小,并与第一个交换,
                                //第二轮,设第二个为min,往后比较,同第一轮
            {                   //最终得出从大到小的数组
                min = j;
            }
            if(min!=i)
            {
                temp = k[min];
                k[min] = k[i];
                k[i] = temp;
            }
        }
    }
}

int main()
{
    int i,a[10]={4,3,6,1,0,8,7,2,9,5};
    slectsort(a,10);
    printf("排序后结果为:");
    for(i=0;i<10;i++)
        {
            printf("%d",a[i]);
        }
    return 0;
}

在这里插入图片描述

谢谢同学们的阅读~~

发布了28 篇原创文章 · 获赞 15 · 访问量 1060

猜你喜欢

转载自blog.csdn.net/qq_43765237/article/details/105512544