排序有以下5类: 插入排序,交换排序,交换排序,并归排序,分配排序。 一、插入类排序 1、直接插入排序 思想:有数组R[1...n]。初始时,R[1]看做有序区,R[2...n],看做无序区,讲R[i](1<i<n+1)依次插入R[1...i-1]的有序区,直到生成有n条记录的有序区。 基本操作:增 ...
分类:
编程语言 时间:
2016-04-21 21:48:32
阅读次数:
293
排序算法Java实现排序算法的分类:
内部排序,在排序过程中,全部记录放在内存中,称为内部排序;
外部排序,在排序过程中需要使用外部存储(磁盘),则称为外部排序。
主要介绍内部排序:
插入排序:直接插入排序、二分法插入排序、希尔排序
选择排序:简单选择排序、堆排序
交换排序:冒泡排序、快速排序
归并排序
基数排序
插入排序直接插入排序
基本思想:对于给定的一组记录,初始时假设第一个记录自成一个有序序...
分类:
编程语言 时间:
2016-04-17 23:08:38
阅读次数:
310
Java排序算法 1)分类: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆排序) 4)归并排序 5)分配排序(箱排序、基数排序) 所需辅助空间最多:归并排序 所需辅助空间最少:堆排序 平均速度最快:快速排序 不稳定:快速排序,希尔排序,堆 ...
分类:
编程语言 时间:
2016-04-16 22:48:31
阅读次数:
229
什么是高速排序 高速排序简单介绍 高速排序(英文名:Quicksort,有时候也叫做划分交换排序)是一个高效的排序算法,由Tony Hoare在1959年发明(1961年发布)。当情况良好时。它能够比主要竞争对手的归并排序和堆排序快上大约两三倍。这是一个分治算法,并且它就在原地排序。 所谓原地排序, ...
分类:
编程语言 时间:
2016-04-16 22:41:55
阅读次数:
399
交换排序(冒泡排序、快速排序) 插入排序(直接插入排序、希尔排序)、 选择排序(直接选择、堆排序) 归并排序 基排序 1.冒泡排序 时间复杂度:最优情况下是O(n),最坏情况和平均情况是O(n2) 空间复杂度:O(1) 稳定 算法实现是 从小到大排序 结果是1 2 3 5 6 7 2 快速排序 时间 ...
分类:
编程语言 时间:
2016-04-02 17:31:55
阅读次数:
221
排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。 内排序有可以分为以下几类: (1)、插入排序:插入排序、二分法插入排序、希尔排序。 (2)、选择排序:选择排序、堆排序。 (3)、交换排序 ...
分类:
编程语言 时间:
2016-03-31 16:24:41
阅读次数:
213
趁空闲时间,我把常用的排序算法实现并总结一下,以便温故知新。以下将提及到直接插入排序、冒泡排序、快速排序、选择排序、堆排序、归并排序。
按类型分,可以分成以下几种:
(1)插入排序:直接插入排序
(2)交换排序:冒泡排序、快速排序
(3)选择排序:选择排序、堆排序
(4)归并排序:归并排序...
分类:
编程语言 时间:
2016-03-28 00:24:28
阅读次数:
176
插入排序:直接插入,希尔排序选择排序:选择排序,堆排序交换排序:冒泡排序,快速排序归并排序:归并排序#include<iostream>
#include<assert.h>
usingnamespacestd;
voidInsertSort(int*arr,size_tsize)
{
assert(arr);
for(inti=0;i<size-1;++i)
{
int..
分类:
编程语言 时间:
2016-03-26 08:58:47
阅读次数:
184
基本思想: 最简单的排序,也是最耗时间的排序 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。 冒泡排序的示例: 算法的实现: 冒泡排序算法的改进 对
分类:
编程语言 时间:
2016-03-18 21:53:22
阅读次数:
214
基本思想: 1)选择一个基准元素,通常选择第一个元素或者最后一个元素, 2)通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的元素值均比基准元素值小。另一部分记录的 元素值比基准值大。 3)此时基准元素在其排好序后的正确位置 4)然后分别对这两部分记录用同样的方法继续进行排序,直到整个序
分类:
编程语言 时间:
2016-03-18 21:41:46
阅读次数:
281