1.插入排序
#include
#include
#define M 100
int main(void)
{
int i, j, n;
int a[M] = {0};
printf("input n:");
scanf("%d", &n);
printf("input a:");
for(i = 1; i
scanf("%d", &a[i]);
...
分类:
编程语言 时间:
2014-06-20 11:00:54
阅读次数:
230
题目链接: here。题目描述: Sort a linked list using insertion
sort. 题目要求使用插入排序的方法来实现单链表的排序。插入排序是一种简单的排序,算法描述参考维基百科,或者《算法导论》。 下面是我实现的代码: 1 /**
2 Author:...
分类:
其他好文 时间:
2014-06-12 00:39:40
阅读次数:
284
一、插入排序1.直接插入排序算法稳定,时间复杂度为O(n^2),空间移动复杂度为O(n2)如果序列是有序的,最好的时间复杂度为O(n)void
insertSort(int data[],int n){ for(int i=1;i=0&&data[j]>temp) { d...
分类:
其他好文 时间:
2014-06-11 12:53:06
阅读次数:
266
常用的排序算法有冒泡排序,插入排序和选择排序。他们的时间复杂度是o(n²),与数据量的平方成正比。他们的效率还是比较低的。现在来说说他们的效率为什么比较低下。以冒泡排序为例,它每一轮都是与相邻的元素进行交换,交换的距离为1,每次每个(没有冒泡出来的)元素都要与前一个比较再交换。每次相邻的比较只能比较出两个元素的大小,不能以整个数组进行参照来确定在整个数组里的大小,也就是说每次的比较不能确定其他元素...
分类:
其他好文 时间:
2014-06-07 16:16:01
阅读次数:
172
算法导论(Introduction to Algorithms )— 第二章 算法入门 — 2.1 插入排序,及习题拙见...
分类:
其他好文 时间:
2014-06-07 15:48:19
阅读次数:
237
插入排序
直接插入排序
// 直接插入排序
void DirectInsertSort(int arr[], int lhs, int rhs)
{
int temp;
for (int i = lhs+1; i = 0 && temp < arr[j]...
分类:
其他好文 时间:
2014-06-07 14:31:54
阅读次数:
274
import static org.junit.Assert.*;import
java.util.Arrays;import org.junit.Test;public class SortAlgorithms { /** *
插入排序算法 * * @param n...
分类:
其他好文 时间:
2014-06-06 07:07:40
阅读次数:
205
在上一篇moonmq的介绍中(这里),我只简短的罗列了一些moonmq的设计想法,可是对于怎样使用并没有具体说明,公司同事无法非常好的使用。对于moonmq的使用,事实上非常easy,例子代码在这里,我们仅仅须要处理好broker,consumer以及publisher的关系就能够了。首先,我们须要...
分类:
其他好文 时间:
2014-06-06 07:02:27
阅读次数:
2659
思路:从数组第二个元素开始折半插入,即把第一个元素看成有序的,然后下标后移一位,直到数组最后一个元素折半插入成功,注意:数组第0号元素不存值,用来存储每次要插入的数据步骤:1.判断要插入的元素是否处于有序状态,是则继续,否则下标后移
2.利用折半查找要插入的下标,记为t 3.从t开始所有数...
分类:
其他好文 时间:
2014-06-05 17:39:25
阅读次数:
177
package chap02;import static
org.junit.Assert.*;import java.util.Arrays;import java.util.Random;import
org.junit.Test;/*** * 在归并排序中对小数组采用插入排序 * * @aut...
分类:
其他好文 时间:
2014-06-05 16:51:05
阅读次数:
197