作为排序算法的一种,插入排序是稳定排序。它的时间复杂度:O(n*n),空间复杂度为:O(1)。最好的时间复杂度为:O(n),最坏和平均则为:O(n*n)。 算法的思想:给定一组无序的数组,我们从它的第二个数开始,并将它赋值给mark变量,让mark和它前面的一个数作大小比较,若小于前面的那个...
分类:
其他好文 时间:
2014-07-04 00:15:22
阅读次数:
296
用HTML5实现的各种排序算法的动画比较http://www.webhek.com/misc/comparison-sort/几种排序算法效率的比较来源:http://blog.chinaunix.net/uid-20773165-id-1847742.html1.稳定性比较插入排序、冒泡排序、二叉...
分类:
Web程序 时间:
2014-07-03 00:31:30
阅读次数:
342
//希尔排序在直接插入排序算法中,每次插入一个数,使有序序列仅仅添加1个节点,而且对插入下一个数没有提供不论什么帮助。假设比較相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比較就可能消除多个元素交换。D.L.shell于1959年在以他名字命名的排序算法中实现了这一思想。算法先...
分类:
其他好文 时间:
2014-07-02 17:20:07
阅读次数:
192
【题目】
Sort a linked list using insertion sort.
【题意】
用插入排序方法排序链表
【思路】
直接搞...
分类:
其他好文 时间:
2014-07-02 08:33:49
阅读次数:
200
继《排序(一)__综述》后,对简单算法中的冒泡排序、简单选择排序和简单插入排序进行较为详细的解析。...
分类:
其他好文 时间:
2014-07-02 07:28:28
阅读次数:
192
NOJ——1062直接插入排序时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte 总提交:446 测试通过:212描述给定输入排序元素数目n和相应的n个元素,写出程序,利用内排序算法中直接插入排序算法进行排序,并输出排序过程中每趟及最后结果...
分类:
其他好文 时间:
2014-07-01 21:00:49
阅读次数:
189
发现科大网页的源码中还有文章的点击率,何不做一个文章点击率的降序排行。简单,前面入门(1)基本已经完成我们所要的功能了,本篇我们仅仅需要添加:一个通过正则获取文章点击率的数字;再加一个根据该数字的插入排序。ok,大功告成!简单说一下本文插入排序的第一个循环,找到列表中最大的数,放到列表 0 的位置做...
分类:
编程语言 时间:
2014-07-01 14:01:14
阅读次数:
245
一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下:
从第一个元素开始,该元素可以认为已经被排序取出下一个元素,在已经排序的元素序列中从后向前扫描如果该元素(已排序)大于新元素,将该元素移到下一位置重复步骤3,直到找到已排序的元素小于或者等于新元素的位置将新元素插入到该位置后重复步骤2~5
#! /usr/bin/env python
# -*- coding: ut...
分类:
编程语言 时间:
2014-07-01 06:58:27
阅读次数:
255
排序算法基本陈述容易理解,之后会详细解析希尔排序、堆排序、归并排序、快速排序、简单选择排序、直接插入排序等排序算法。...
分类:
其他好文 时间:
2014-07-01 06:37:39
阅读次数:
188
从题目看,首先不是全部是若干。排序算法很多,我个人的能力也有限,不可能都讲到。另外,是简单汇总,是希望能用最简单的代码,最简短的语言说明问题,不搞太多理论分析。就像前面说的,排序算法有很多,而且不存在哪一种最不好,哪一种最好这样的说法。根据用途不同选择最适合的就行了。不过仅从时间复杂度来看,基本上有两种,一种是O(n^2), 一种是O(nlogn)。...
分类:
其他好文 时间:
2014-06-30 20:01:09
阅读次数:
191