在分析插入排序的算法性能的过程时知道,当数组规模较小或者存在较多的有序子序列时,插入排序将会在很短的时间内完成数组的排序,为此可以设计一个单调序列h[n],将数组分为多个小的序列,然后这些小的序列使用插入排序。h[n]={1,4,7,10,13,16,19……,3*x+1}。
算法实现:
void sort::shell_sort(int* a, const int n)
{
int h =...
分类:
编程语言 时间:
2014-11-12 22:59:51
阅读次数:
224
排序很多时候都会用到,而在js中排序的算法有九个是人们常用的,而且使用起来可以很流畅。本文将对这九种排序算法进行详细介绍,教程尚硅谷JavaScript DOM视频教程还有详细的代码分享哦。 一、插入排序1)算法简介 插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工...
分类:
编程语言 时间:
2014-11-10 17:20:54
阅读次数:
281
#include
#include
using namespace std;
//void insert_sort(vector &a)
//{
// int temp;
// size_t n = a.size();
// for ( int i= 1; i = 0 && a[j]>a[j + 1]; j--...
分类:
编程语言 时间:
2014-11-08 09:19:05
阅读次数:
192
插入排序算法是一个对少量元素进行排序的有效算法。插入排序的工作原理与打牌时整理手中的牌的做法类似,开始摸牌时,我们的左手是空的,接着一次从桌上摸起一张牌,并将它插入到左手的正确位置。为了找到这张牌的正确位置,要将它与手中已有的牌从右到左进行比较,无论什么时候手中的牌都是排序好的。
JAVA实现该算法如下:
public void insertSort(int a[]){
i...
分类:
编程语言 时间:
2014-11-07 17:06:37
阅读次数:
153
前言: 昨天下午写好了冒泡排序后,紧跟其后,今天跟新上插入排序算法。插入排序:它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入情景描述: 紧接冒泡排序,每次同学们都屡试不爽,但是学生越来越多了,老师发现每次排完队,就耽搁了大半节课时了,说道:“咱不用.....
分类:
编程语言 时间:
2014-11-04 09:10:36
阅读次数:
214
看书、思考、写代码!
/***********************************************
* copyright@hustyangju
* blog: http://blog.csdn.net/hustyangju
* 2014-11-03
* 题目: 插入排序
* 描述: 给定一个数组,按照逐个插入比较的方法得到一个已序数组
* 解题思路:从第一个元素开始,在已序...
分类:
编程语言 时间:
2014-11-03 22:37:59
阅读次数:
190
http://www.cnblogs.com/archimedes/p/4014912.html
分类:
编程语言 时间:
2014-10-23 23:56:58
阅读次数:
234
插入排序算法主要有三种:直接插入排序、折半插入排序、希尔排序1、直接插入排序:/***直接插入排序,*1、从i-->length-1开始做插入扫描*2、初始化一个要插入的元素(1步骤中的)*3、从0-->i开始做插入排序操作*如果要插入的元素小于0-->i中的某一个元素,则做位置替换,*否者,执行第...
分类:
编程语言 时间:
2014-10-23 20:44:29
阅读次数:
255
#include #pragma mark 选择排序算法void xuanze_array(int *array, int len){ for (int i = 0; iarray[j+1]) {// int temp = array[j];// array[j] = ...
分类:
编程语言 时间:
2014-10-19 22:51:33
阅读次数:
180
这算是经典算法了,网上很多朋友都写了,有的我看不懂,所以我自己按照我自己所理解的写出来,我觉得只有自己写出来的东西才是自己的主要思路:1.将数组的前两个数进行大小排序2.将第三个数与前两个数进行比较,将第三个数插入到合适的位置3.循环其实这样来将对于新手来说,将其变成代码是有点困难的。我也是。我很笨...
分类:
编程语言 时间:
2014-10-18 23:43:37
阅读次数:
237