美文网首页
C语言插入排序

C语言插入排序

作者: 向阳的落叶 | 来源:发表于2018-01-03 10:48 被阅读0次

C语言插入排序

插入排序的工作方式就像排序一手扑克牌。开始时,我们的左手为空,然后,我们每次从桌上拿走一张牌并将它插入到左手中正确的位置。为了找到正确的位置,我们总是从右到左将它与左手中的每张牌进行比较。这样,左手中的牌始终是排好序的,直到最后一张。插入排序的时间复杂度是O(n^2),因此,对于小规模问题,能有效解决。

Code :

①. 定义型声明不可以加分号

include.png

 ②. 为了让插入排序进行,左手上必须先至少拿着一张牌才能比较,如果共要排序n张牌,则需要进行size-1次排序

 ③. 如果以从小到大排序,从右边卡池里抽出一张牌并与左手进行比较,从左手第一张牌开始比较,如果抽出的牌更大,则比较左手第二张牌,依此类推进行比较,直到左手的牌比抽出的牌大,或者遍历完整个左手上的牌。  

比较.png

④.当比较完找到插入的位置,把手上的牌放进一个临时变量,并放进左手卡牌组里

卡牌插入左手牌组.png

  ⑤. 设个主函数并把插入排序函数引入,同时设个带10个数字的数组,并进行输出..

主函数.png

 ⑥.  输出结果:

运算结果.png

相关文章

  • C语言插入排序

    C语言插入排序 插入排序的工作方式就像排序一手扑克牌。开始时,我们的左手为空,然后,我们每次从桌上拿走一张牌并将它...

  • 插入排序(C语言)

  • 排序算法(插入排序、希尔排序、堆排序、归并排序)

    插入排序、希尔排序、堆排序、归并排序 --c语言实现 逐渐添加中....

  • 七种常见的数组排序算法整理(C语言版本)

    ~~~C语言版本~~~ 冒泡排序 选择排序 直接插入排序 二分插入排序 希尔排序 快速排序 堆排序 排序算法是否稳...

  • 简单插入排序(C语言)

    如下图显示

  • 排序

    本文主要介绍排序的几种实现,简单计算一下复杂度。 冒泡排序 插入排序 由N-1趟排序组成C语言代码实现: 插入排序...

  • 排序

    图解:C语言入门:插入排序(代码实现,而不是排序方法阐述) - Rivival_S 的博客 - CSDN博客 插入...

  • 排序算法

    均为C语言实现 操作对象均为一维int型数组 逆序 选择排序 冒泡排序 另一种写法 插入排序 原地插入排序 二分法

  • 数据结构(C语言)插入排序

    插入排序是将数组里面的第一个数当作有序的,往后的每一个数都和有序数组里面的每一个数作比较,找到合适的位置插入,结果...

  • c语言实现插入排序算法

    1.算法简介    插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新...

网友评论

      本文标题:C语言插入排序

      本文链接:https://www.haomeiwen.com/subject/ncncnxtx.html