C的常用排序

这里排序都以数组为主。。

1、插入排序

插入排序主要过程是从第二个元素开始,将这个元素与前面的元素进行比较,如果前面的元素的值小于当前的值,则将两个元素交换位置,直到找到合适的位置。

 

 

2、希尔排序

排序首先取一个增量d1(d1<n),将序列分成d个组,然后分别将这d1个组中的元素进行插入排序。

然后取d2 (d2 < d1)重新分组、排序,直到di = 1为止。

 

 

 

3、冒泡排序

从头开始依次比较第N个N+1个数,按照大小交换位置,直到排到最后两个元素。

 

 

4、快速排序

快速排序就是以第一个数为基准x,从最后一个数(j)向后找到比x小的数,两者交换位置,j--,然后向前(i)找到大于x的数,交换位置,i++。

一直到i=j,i之前的数均小于x,i之后的数大于x,然后再将剩下的再进行排列,直到排列完成。

 

5、选择排序

从i开始,将数组进行遍历,找到最小值k,将k与第i个数交换位置。然后在(i+1,n)之间进行此操作,直到倒数第一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值