C语言:给定一数组,包涵n个元素,设计功能函数,使用选择排序法,对其进行从大到小排序

2020-05-08 文化 164阅读
//选择排序算法,按从小到大顺序
void select_sort(int *arr,int n)
{
    int i,j,k;
    int tmp;
    for(i=0;i    {
        k=i;  //开始一趟选择排序,假定第i个元素是后面n-i+1个未排序的元素中最小的元素
        for(j=i+1;j        {
if(arr[k] > arr[j]) //如果发现比当前最小元素还小的元素,则更新记录最小元素的下标k
    k=j;
        }
//如果最小元素的下标不是后面n-i+1的未排序序列的第一个元素,则需要交换第i个元素和后面找到的最小元素的位置
        if(k != i)
        {
            tmp=arr[k];
            arr[k]=arr[i];
            arr[i]=tmp;
        }
    }
}
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com