插入排序算法

插入排序算法

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

C语言简单的插入算法:

插入排序的基本思想:

经过i-1遍处理后,a1a2ai-1己排好序。

i遍处理仅将ai插入a 1a2ai-1的适当位置。使得a1a2ai成为有序序列。

首先比較aiai-1,假设ai-1ai,则a1a2ai已经是有序序列,第i遍处理就结束了;否则交换aiai-1的位置。继续比較ai-1ai-2。直到找到某一个位置j(1ji-1)。使得aj aj+1时为止。

实例图:

插入排序算法

插入排序算法

排序过程:

插入排序算法

插入排序算法

核心代码:

void insertSort(int arr[], int length)
{
	int key;
	int i, j;
    for(i = 1; i < length; i++)
	{
       key = arr[i];
	   for(j = i - 1; j>= 0; j--)
	   {
		   if(arr[j] >= key)
		   {
			   arr[j+1] = arr[j];
		   }
		   else
			   break;
	   }
	   arr[j+1] = key;
	}
}


測试例如以下:

插入排序算法

插入排序算法

版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117597.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 迭代器Python_python迭代器使用

    迭代器Python_python迭代器使用迭代器迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。可迭代对象我们已经知道可以对l

    2022年8月6日
    9
  • Python分布式爬虫原理[通俗易懂]

    转载请注明出处:http://blog.csdn.net/yiliumu/article/details/21335245首先,我们先来看看,如果是人正常的行为,是如何获取网页内容的。(1)打开浏览器,输入URL,打开源网页(2)选取我们想要的内容,包括标题,作者,摘要,正文等信息(3)存储到硬盘中上面的三个过程,映射到技术层面上,其实就是:网络请求,抓取结构化数据,数据存

    2022年4月8日
    53
  • 手把手教您组装一台家用NAS J3455黑群晖6.1.7搭建全过程[通俗易懂]

    手把手教您组装一台家用NAS J3455黑群晖6.1.7搭建全过程[通俗易懂]不到千元!手把手教您组装一台家用NASJ3455黑群晖6.1.7搭建全过程其实,市面上那么多NAS,特别是黑群晖,到底哪一台,哪一种配置最适合家用呢?经过俺几个月的观察和尝试,最终锁定了目标:J

    2022年8月3日
    17
  • HP磁盘阵列损坏的修复

    HP磁盘阵列损坏的修复公司中有一台HPDL380G5服务器硬盘红灯报警,使用ACU工具查看后,显示磁盘损坏,截图如下:更换磁盘后,显示正在重建,即属于正常,截图如下:更换硬盘前需要确认硬盘是什么型号,哪个系列的,以及硬盘的大小:最重要的是SPARE号一定要保持一致。下面给大家提供一下更换磁盘的一些资料以及注意事项:1、更换的磁盘与原先的磁盘无比保持大小相同,型号…

    2022年5月30日
    43
  • 云存储性能_内存256g和128g的区别

    云存储性能_内存256g和128g的区别与以磁盘存储为主的普通数据库相比,内存数据库的数据访问速度可以高出几个数量级,能大幅提高运算性能,更适合高并发、低延时的业务场景。不过,当前大部分内存数据库仍然采用SQL模型,而SQL缺乏一些必要的数据类型和运算,不能充分利用内存的特征实现某些高性能算法。仅仅是把外存的数据和运算简单地搬进内存,固然也能获得比外存好得多的性能,但还没有充分利用内存特征,也就不能获得极致的性能。下面我们来看看,有哪些适合内存特征的算法和存储机制,可以进一步提升内存数据库计算速度。我们知道,内存可以通过地址(指针)来访问

    2025年8月14日
    3
  • acwing-1088旅行问题

    acwing-1088旅行问题原题链接John 打算驾驶一辆汽车周游一个环形公路。公路上总共有 n 个车站,每站都有若干升汽油(有的站可能油量为零),每升油可以让汽车行驶一千米。John 必须从某个车站出发,一直按顺时针(或逆时针)方向走遍所有的车站,并回到起点。在一开始的时候,汽车内油量为零,John 每到一个车站就把该站所有的油都带上(起点站亦是如此),行驶过程中不能出现没有油的情况。任务:判断以每个车站为起点能否按条件成功周游一周。输入格式第一行是一个整数 n,表示环形公路上的车站数;接下来 n 行,每行两个整数

    2022年8月9日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号