算法排序

个人说明:排序的算法有许多种,该博客只是列举了部分常用的排序方式,以供参考。程序使用语言为C语言。

3.插入排序法

  • 基本思想
    在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
  • 图解
  • 代码实现
#include<stdio.h>int main(){int a[]={1,54,6,3,78,34,12,45};int n=sizeof(a)/sizeof(int);//插入排序法for (int i = 1; i < n; i++) {int temp = a[i];for (int j=i-1;j>=0 && temp<a[j]; j--) {a[j+1] = a[j];}a[j+1] = temp;}for(i=0;i<n;i++){printf("%d ",*(a+i));}printf("\n",*(a+i));return 0;
}
  • 参考博客

https://blog.csdn.net/without0815/article/details/7697916

C程序设计--排序(冒泡、选择、插入)--插入相关推荐

  1. php冒泡 插入选择 排序,说说PHP数组的三种排序(冒泡/选择/插入)方法

    说说PHP数组的三种排序(冒泡/选择/插入)方法 PHP #数组 #排序 #冒泡 #选择 #插入2012-05-30 10:17 一.冒泡排序法 说明:找到最大的数,排列到最后面,然后继续找 例: $ ...

  2. 四种排序:选择,插入,冒泡,快速排序原理及其对应的时间、空间复杂度解析

    四种排序:选择,插入,冒泡,快速排序原理及其对应的时间空间复杂度 首先,在了解四种排序之前,让我们来了解一下什么是时间复杂度和空间复杂度. 时间复杂度:算法的时间复杂度是一个函数,它定性描述该算法的运 ...

  3. 【实战笔记】Java 算法与数据结构-排序(选择、插入、冒泡、希尔、归并、快速、堆)

    文章目录 基础排序算法O(n^2) 选择排序 插入排序及优化 冒泡排序及优化 希尔排序及优化 高级排序算法O(nlogn) 归并排序及优化 快速排序及优化 堆和堆排序 排序算法总结 本文为慕课网实战课 ...

  4. 算法笔记-排序算法(冒泡 选择 插入)

    首先罗列一下常见的十大排序算法: 一.冒泡排序 1. 定义: 冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则 ...

  5. 常用排序算法的c++实现(冒泡,选择,插入,堆,shell,快速,归并 )与sort()对比 - coder_xia的专栏 - 博客频道 - CSDN.NET...

    常用排序算法的c++实现(冒泡,选择,插入,堆,shell,快速,归并 )与sort()对比 - coder_xia的专栏 - 博客频道 - CSDN.NET 常用排序算法的c++实现(冒泡,选择,插 ...

  6. Java五大排序(冒泡,选择,插入,快速,归并)

    冒泡,选择,插入,快速,归并这五个排序应该是所有编程语言初学者所遇到过的,可能在实际的编程应用中不会遇到,但对于初学者而言能起到锻炼编程思维的作用.废话不多说,下面进入正题. 冒泡排序 冒泡排序的就是 ...

  7. java冒泡遍历对象_Java经典排序算法(冒泡、选择、插入)

    排序算法说明 排序说明 对一序列对象根据某个关键字进行排序. 术语说明 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面: 不稳定:如果a原本在b的前面,而a=b,排序之后a可能会出现在b ...

  8. Python实现常用排序(选择、冒泡、插入、快排、合并排序、堆排序)

    排序 基本思想:各类排序的共同点,个人认为可以把原始的数据序列,划分为有序序列与无序序列.有序序列开始可能为0,在每一次操作(循环或者递归)后,有序序列数目会加1,无序序列数目会减一,代码走完后,原本 ...

  9. 面试必备:冒泡,选择,插入,希尔,归并,快速排序大合集

    目录 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 在很多大厂的面试中,算法是最基本的要求,像基础的算法,冒泡,选择,插入等,基本上都会问到. 很多同学往往忽略了其重要程度,只注重编程语 ...

  10. C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划

    C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划 博文末尾支持二维码赞赏哦 _ github 章3 Stack栈 和 队列Queue= ...

最新文章

  1. sqlserver可将字符转成数字再进行sum,如果varchar类型中存放的都是数字
  2. linux 配置 java 环境变量
  3. select frame 什么意思?
  4. 图的基本算法实现(邻接矩阵与邻接表两种方法)
  5. Git 工具 - 子模块 外部引用
  6. 面对大规模 K8s 集群,如何先于用户发现问题?
  7. 技术干货| 阿里云基于Hudi构建Lakehouse实践探索
  8. excel函数怎么用android,在Android中阅读Excel
  9. Git 忽略一些文件的提交
  10. python 面试题(1)--- python模块
  11. Memcached集成Spring缓存环境构建
  12. 海洋工作室——网站建设专家:全数据库比较工具
  13. java默认异常处理_spring boot 默认异常处理的实现
  14. 测试监控系列:使用vb批量统计nmon结果
  15. 使用SQLite3支持中文路径
  16. paip.银行卡号的发卡行归属地查询
  17. Tomcat的下载及安装
  18. 二/三维空间曲面的切平面以及在某一点上的切线,法线
  19. PDF所有目录的页码全部变为“错误!未定义书签!”
  20. 《梁宁产品思维30讲》

热门文章

  1. 关于ubuntu下无线网卡经常连不上网络的问题
  2. 设置HTML元素的透明度
  3. 【java与移动智能设备】高级用户组件
  4. Unity3D-后期处理 Post-process Volume Profile
  5. Can't use Subversion command line client: svn Probably the path to Subversion executable is wrong
  6. html怎么快速收录,如何让网站快速收录?网站提高收录的10种方法
  7. 如何用python创建文件_终于明了python如何创建文件
  8. java struts 读取文件_读取文件.txt并将其保存到c中的struct
  9. fortran语言和python_fortran是什么语言吗?
  10. 微信分享链接php,微信实现分享链接的缩略图和标题