直接插入排序——C语言

什么是直接插入排序?怎么理解它?

举个栗子:比身高,

一群人站成一排,你的身高在这些人中不高不矮,要想把你放进去且身高递增,肯定是要比较的,既然要比较那就要有比较的基准,

同理要想在无序数组里插入一个数,肯定也要比较,

给出一组数{4,2,3,1,5},要把它变成有序怎么办?是不是可以把4看做一个基准,比4大的都在4前面,比4小的都在后面呢?而且2前面只有一个数:4,它一定是有序的!接下来我们试一下:

        4,2,3,1,5(把2取出与4比较,2<4,所以4后退一位进入2的位置,2则放入4的位置)——>2,4,3,1,5(现在2,4有序的)

          2,4,3,1,5(把3取出与4比较,3<4,再与2比,3>2所以4后退一位进入3的位置,3则放入4的位置)——>2,3,4,1,5(2,3,4有序)

          接下来同理

          下面贴上代码


贴上运行结果


如有错误,欢迎大家指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值