折半插入排序是对直接插入排序进行了改进,在寻找插入点时使用二分查找算法,提高了查询效率。 升序排序: 降序排序: ...
分类:
编程语言 时间:
2017-03-09 17:05:04
阅读次数:
178
一、直接插入排序 二、折半插入排序 折半插入排序(binary insertion sort)是对插入排序算法的一种改进。 ...
分类:
编程语言 时间:
2017-02-05 14:00:11
阅读次数:
272
10种排序算法,分别是直接插入排序,折半插入排序,希尔排序,冒泡排序,快速排序,直接选择排序,树形排序,堆排序,归并排序,基数排序。各有千秋,但依旧有优劣之分,熟悉每一个算法,对于我们的代码优化,也将事半功倍。 1,直接插入排序: 基本思想: 假设待排的n个记录存放在变量R中,首先将R[1]看做是有 ...
分类:
编程语言 时间:
2017-01-10 08:23:33
阅读次数:
268
基本思想: 折半插入算法是对直接插入排序算法的改进,排序原理同直接插入算法: 把n个待排序的元素看成一个有序表和一个无序表,开始时有序表中只有一个元素,无序表中有n-1个元素;排序过程即每次从无序表中取出第一个元素,将它插入到有序表中,使之成为新的有序表,重复n-1次完成整个排序过程。 与直接插入算 ...
分类:
编程语言 时间:
2017-01-03 13:16:24
阅读次数:
252
// main.cpp // BinaryInsertSort // Created by Jason on 16/9/22. // Copyright © 2016年 Jason. All rights reserved. #include <iostream> using namespace s ...
分类:
编程语言 时间:
2016-09-27 13:31:35
阅读次数:
139
#include using namespace std;int main(){ const int MAXN = 100; int a[MAXN]; int n; cin >> n; int i, j; int low, high, mid; for(i = 1; i > a[i]; } int ... ...
分类:
编程语言 时间:
2016-09-25 22:29:08
阅读次数:
207
稳定算法: 直接插入排序、折半插入排序、冒泡排序、归并排序 不稳定算法: 希尔排序、快速排序、简单选择排序、堆排序 直接插入排序(从原位置在有序部分逐次比较找到最终位置插入) void InsertSort(ElemType A[], int n) { int i, j; for( i = 2, i ...
分类:
编程语言 时间:
2016-09-11 18:54:29
阅读次数:
216
插入排序是一类借助插入操作进行排序的方法,其核心思想是每次将代排序的记录插入到有序区中并使有序区仍然有序。 也就是说在考虑记录Ri之前,R1、R2...,Ri-1为有序序列,现在要将Ri插入到该有序序列适当的位置。 插入排序可分为直接插入排序、折半插入排序、二路插入排序和希尔排序。 ...
分类:
编程语言 时间:
2016-09-10 20:45:59
阅读次数:
153
近期来闲来无事,整理了一些比较常见的排序算法,都是用C++写的,其中包括:直接插入排序、折半插入排序、冒泡排序、选择排序、快速排序、堆排序、归并排序、希尔排序、基数排序,计数排序和桶排序,总共11种算法,其中时间复杂度为O(n^2)为前4种,中间4中的时间复杂度为O(nlgn),最后3种的时间复杂度 ...
分类:
编程语言 时间:
2016-09-01 18:32:02
阅读次数:
279