您现在的位置是:群英 > 开发技术 > 编程语言
C语言如何实现选择排序,原理你知道吗?
Admin发表于 2022-02-15 17:51:241168 次浏览

    这篇文章给大家分享的是C语言选择排序的相关内容。下文介绍了C语言实现选择排序的原理和示例,文中的示例代码介绍得很详细,有需要的朋友可以参考,对大家学习和理解选择排序会有帮助,接下来就跟随小编一起了解看看吧。

    分析

    选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。——百度百科

    代码实现

#include <stdio.h>
#define INTEGER_RANGE 10  //数字范围
void select_sort(int *array, int len);

int main()
{
    int i = 0;
    int array[INTEGER_RANGE] = {0};
    printf("请输入10个数\n");
    for(i = 0; i < INTEGER_RANGE; i++)
        scanf("%d", array + i);
    select_sort(array, INTEGER_RANGE);
    printf("排序后:\n");
    for(i = 0; i < INTEGER_RANGE; i++)
        printf("%d ", array[i]);
    printf("\n");
    return 0;
}
/**
 * @brief 选择排序
 * @param array:数组 len:数组长度
 * @return 空
 */
void select_sort(int *array, int len)
{
    int i = 0;
    int j = 0;
    int tmp = 0;
    for(i = 0; i < len; i++)
    {
        for(j = i + 1; j < len; j++)
        {
            if(array[j] < array[i])
            {
                tmp = array[j];
                array[j] = array[i];
                array[i] = tmp;
            }
        }
    }
}

    运行结果

    总结

    关于C语言实现选择排序的原理和示例就介绍到这,上述方法示例具有一定的借鉴价值,感兴趣的朋友可以参考,希望能对大家有帮助,想要了解更多大家可以关注群英网络其它的相关文章。

文本转载自PHP中文网

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2022-10-11 09:18:04 
摘要:Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎,当通过 Web 应用程序访问时,Thymeleaf 会动态地替换掉静态内容,使页面动态显示,这篇文章主要介绍了thymeleaf实现前后端数据交换,需要的朋友可以参考下
2022-01-20 19:46:48 
摘要:这篇文章我们来了解Java中indexof方法的相关内容,Java中indexof方法有两种使用,下文有详细的介绍,对新手学习和理解indexof方法的使用有帮助,有需要的朋友可以参考,接下来就跟随小编来一起学习一下吧!
2021-11-29 17:58:53 
摘要:这篇文章给大家分享的是用PHP生成缩略图的实现方法。小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部