C语言大牛推荐七大排序算法学生来看

 我来答
阿阳畅心声
情感倾听者

2023-06-20 · 专注挽回感情
知道大有可为答主
回答量:9428
采纳率:98%
帮助的人:123万
展开全部

C语言7种排序算法附代码

1.冒泡排序

比较相邻的元素。如果第一个比第二个大,就交换它们两个对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数:针对所有的元素重复以上的步骤,除了最后一个;重复步骤1~3,直到排序完成。

2.选择排序

在未排席序列中找到最小(大)元素,存放到排序序列的起始位置从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末,以此类推,直到所有元素均排序完毕

3.插入排序

从第一个元素开始,该元素可以认为已经被排序;

取出下一个元素,在已经排序的元素序列中从后向前扫描:如果该元素(已排序)大于新元素,将该元素移到下一位置;

4.快速排序

快速排序的基本思想是通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。

5.希尔排序

选择一个增量序列t1,t2,"”,tk,其中ti>tj,tk=1;按增量席列个数k,对序列进行k 趟排序;

6.桶排序

设置一个定量的数组当作空桶子

寻访序列,并且把项目一个一个放到对应的桶子去。

对每个不是空的桶子进行排序。

7.基数排序

取得数组中的最大数,并取得位数:

arr为原始数组,从最低位开始取每个位组成radix数组;对radix进行计数排序(利用计数排序适用于小范围数的特点)从不是空的桶子里把项目再放回原来的序列中

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式