还有一个:二分插入排序 平均时间O(n2) 稳定1、插入排序在要排序的一组数中,假设前面(n-1) [n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。直接插入排序是稳定的。算法时间复杂度O(n2)--[n的平方]mai...
分类:
移动开发 时间:
2015-06-15 16:19:28
阅读次数:
184
声明:本文涉及的所有排序算法定义功能对输入进行从小到大排序
符号解释:
n:输入数据个数
Θ(n):n的同阶无穷大
一、选择排序
def SelectSort(a):
for i in range(0,len(a)-1):
minIndex=i
for j in range(i+1,len(a)):
i...
分类:
编程语言 时间:
2015-06-15 11:13:27
阅读次数:
144
分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。
分治法解题的一般步骤:
(1)分解,将要解决的问题划分成若干规模较小的同类问题;
(2)求解,当子问题划分得足够小时,用较简单的方法解决;
(3)合并,按原问题的要求,将子问题的解...
分类:
编程语言 时间:
2015-06-14 15:12:23
阅读次数:
132
转自:blog.csdn.com/whuslei排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。 我不喜欢死记硬背,我更偏向于弄清来龙去脉,理解性地记忆...
分类:
编程语言 时间:
2015-06-09 09:36:15
阅读次数:
113
前言: 本人自接触算法近2年以来,在不断学习中越多地发觉各种算法中的美妙。之所以在这方面过多的投入,主要还是基于自身对高级程序设计的热爱,对数学的沉迷。回想一下,先后也曾参加过ACM大大小小的校级赛、区域赛。没什么惊天动地的奖项,最好的名次也就省三等奖。现在作为第一篇算法总结就拿常见的排序算法以我....
分类:
编程语言 时间:
2015-06-08 06:10:28
阅读次数:
168
原文:http://wuchong.me/blog/2014/02/09/algorithm-sort-summary/经典排序算法在面试中占有很大的比重,也是基础,为了未雨绸缪,在寒假里整理并用Python实现了七大经典排序算法,包括冒泡排序,插入排序,选择排序,希尔排序,归并排序,快速排序,堆排...
分类:
编程语言 时间:
2015-06-03 15:37:46
阅读次数:
239
主要针对于插入排序,交换(冒泡和快速),选择,堆排序,归并这几种排序的基本原理和时间复杂度,及空间复杂度的一个总结。
一、插入排序
基本执行过程:3 5 2 7 9 8
1、从小到大:从第二个数开始,每次比较都与前边的几个数进行比较
但是从大到小,要先与前边排好序的几个数中的最大的开始进行比较即倒序比较,依次往前推。
如:5 先与3进行比较,比3大,所以直接排在3的...
分类:
编程语言 时间:
2015-05-25 11:36:18
阅读次数:
241
选择算法
选择算法之选取最大数或最小数
选取最大数或最小数代码实现
选择算法之选取最大数和最小数
选取最大数和最小数代码实现
选取最大数和最小数代码优化
快速选择算法
快速选择算法分析
快速选择算法编码实现
快速选择算法代码优化
BFPRT选择算法
BFPRT选择算法主元选择
BFPRT选择算法性能分析
BFPRT选择算法代码实现注:本文中的所有代码都在这里选择算法选择算法就是用来解决在一堆数里面选...
分类:
编程语言 时间:
2015-05-24 15:46:54
阅读次数:
349
前言
一提排序算法,大家脑海中就会想起插入,冒泡,选择……很多种排序算法。东西一多,大家就容易头疼。所以,在总结各个算法之前,我们先来减负。
精髓
基本操作是两个数之间进行比较。
每一类排序算法都有基本算法和优化算法(也可以称作无前提的算法和有前提的算法)。
优化算法是建立在一定基础前提之上(待排序序列已经有一定的顺序了)。
优化算法会降低时间复杂度,但是以增加空间复杂度为代价。(实际当中我...
分类:
编程语言 时间:
2015-05-19 21:02:35
阅读次数:
144
九大排序算法再总结 算法的由来:9世纪波斯数学家提出的:“al-Khowarizmi”排序的定义:输入:n个数:a1,a2,a3,...,an输出:n个数的排列:a1',a2',a3',...,an',使得a1' T(n)=O(n^2)四、归并排序特点:stable sort、Out-pla...
分类:
编程语言 时间:
2015-05-11 23:39:16
阅读次数:
272