shell排序是插入排序的改进方法,但是不稳定#include
using namespace std;
void insertDxSort(int *data,int start,int end,int dx)
{ //以增量dx进行增量排序
int key=0;
int j=0;
for(int i=start+dx;i<=end;i+=dx)
{...
分类:
编程语言 时间:
2015-05-16 20:38:30
阅读次数:
109
这一系列博客的特点就是——给出每趟排序的结果本来想着好好写一下过程,弄个图片什么的,不过觉得网上的解析太多了,都比较好,所以这些博客就算是对自己的总结吧。#include<stdio.h>
voidShellSort(int*m,intn)
{
inti,flag,gap;
for(gap=n;gap!=1;)
{
gap/=2;
..
分类:
编程语言 时间:
2015-04-29 17:31:13
阅读次数:
157
1 .插入排序的过程如同我们平时打扑克牌取牌插入的过程,不断将取出的扑克牌插入已经排好的地方。插入排序过程初始有序区间大小为1,取出无序区间的首元素,查找有序区间的合适位置,进行插入。不断重复上述过程,即可完成操作。图解示例 1 //插入排序 2 //karllen @2015 3 void ins...
分类:
编程语言 时间:
2015-04-20 20:43:45
阅读次数:
156
shell排序的方法又称缩小增量法,是对直接插入排序法的改进。至于对于分组后采用哪种排序方法实现,本例采用直接选择排序和直接插入排序,理论上讲,通过分组排序后,数据基本上有序,这时通过直接插入排序会比直接选择排序好,因为直接选择排序每一趟排序都必须比较所有的元素。具体代码如下:/* *shell排序...
分类:
编程语言 时间:
2015-04-13 12:37:36
阅读次数:
158
在学习算法的过程中,我们难免会接触很多和排序相关的算法。总而言之,对于任何编程人员来说,基本的排序算法是必须要掌握的。从今天开始,我们将要进行基本的排序算法的讲解。Are you ready?Let‘s go~~~1、排序算法的基本概念的讲解 时间复杂度:需要排序的的关键字的比较次数和相应的移动的....
分类:
编程语言 时间:
2015-03-28 01:09:36
阅读次数:
196
插入算法很多,无论是在内功修炼,各种笔试面试都是相当有用的。接下来,将陆续将各种排序算法进行练习:
主要分为以下几个部分(其他后面学习补充):
一、插入类排序:1、直接插入排序;2、折半插入排序;3、希尔shell排序;
二、交换类排序:1、冒泡排序 ;2、快速排序;
三、选择类排序:1、简单选择; 2、堆排序;
本人多使用Java——开始吧!
首先推荐维基百科《排序算法》词条...
分类:
编程语言 时间:
2015-03-20 12:55:22
阅读次数:
187
所有排序算法总结:冒泡排序,快速排序,插入排序,归并排序,堆排序,shell排序,选择排序1. 冒泡排序 很简单的排序,外层循环是n-1趟,内层循环是n-1次两两比较。主要思路:从底部往上冒泡,通过无序区中相邻记录关键字间的比较和位置的交换,使关键字最小的记录如气泡一般逐渐往上“漂浮”直至“水面”....
分类:
编程语言 时间:
2015-03-13 18:22:50
阅读次数:
167
要点希尔(Shell)排序又称为缩小增量排序,它是一种插入排序。它是直接插入排序算法的一种威力加强版。该方法因DL.Shell于1959年提出而得名。希尔排序的基本思想是:把记录按下标的一定增量 gap 分组,对每组记录采用直接插入排序方法进行排序。随着增量逐渐减小,所分成的组包含的记录越来越多,到...
分类:
编程语言 时间:
2015-03-05 19:16:11
阅读次数:
242
http://blog.sina.com.cn/s/blog_6d09b5750100x6zg.html首先是shell排序实现多列排序,这里添加竖线以作分割,如下文件test:a|gggg|4|7b|fff2|3|2c|gea0|6|12d|kkkg|4|11e|uity|6|4f|fger|1|...
分类:
系统相关 时间:
2015-02-28 16:05:35
阅读次数:
288
常见经典排序算法1.希尔排序2.二分插入法3.直接插入法4.带哨兵的直接排序法5.冒泡排序6.选择排序7.快速排序8.堆排序排序算法对比一.希尔(Shell)排序法(又称宿小增量排序,是1959年由D.L.Shell提出来的)/* Shell 排序法 */#include void sort(int...
分类:
编程语言 时间:
2015-01-24 12:53:51
阅读次数:
219