之前看到一个题目,大概是:有一个长度为n的数组,数组内的元素取值范围为0到m,且不相等,要求元素经过n次移动后使数组有序(即算法的复杂度为O(n))。看到题目后想了快速排序和归并排序发现并不能满足题目要求,直到有次看书有看到了桶排序然后豁然开朗,所以决定把这些排序算法再写一遍,加深记忆。约定:之后的...
分类:
其他好文 时间:
2014-05-09 10:52:49
阅读次数:
333
归并排序的基本思想:首先,将R[0..n-1]看成是n个长度为1的有序表,将相邻的有序表进行归并,得到n/2个长度为2的有序表;然后,再将这些有序表成对归并,得到n/4个长度为4的有序表,如此循环下去,最后得到一个长度为n的有序表。
注意的是:Merge()实现了一次归并,接下来需要利用Mer...
分类:
其他好文 时间:
2014-05-08 14:28:05
阅读次数:
484
快速排序是一种分治的排序。快速排序与归并排序是互补的:
归并排序将数组分成两个子数组分别排序,并将有序的子数组归并以将整个数组排序;而快速排序将数组首先切分成两个子串,然后分别排序。相关的代码:public
static void QuickSort(char[] a, int lo, int hi...
分类:
其他好文 时间:
2014-05-07 14:14:01
阅读次数:
264
归并排序
归并排序 (merge sort) 是一类与插入排序、交换排序、选择排序不同的另一种排序方法。归并的含义是将两个或两个以上的有序表合并成一个新的有序表。归并排序有多路归并排序、两路归并排序 , 可用于内排序,也可以用于外排序。这里仅对内排序的两路归并方法进行讨论。
1.两路归并排序算法思路
①把 n 个记录看成 n 个长度为1的有序子表;
②进行两两归并使记录关键字有序,...
分类:
编程语言 时间:
2014-05-07 11:47:08
阅读次数:
347
题意:两两相邻的元素可以交换,问最小交换次数使得数列为升序。
思路:归并排序分治法。看到琦神又用了树状数组的方法求。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define P...
分类:
其他好文 时间:
2014-05-07 08:54:01
阅读次数:
488
package mydata;
public class MyMergeSort {
/**
*
* 1.递归拆分
* 2.合并
* 归并排序 先将初始的序列表看成是n个长度为1的有序表
* (1)定义指针i,指向第一个序列表的第一个元素
* (2)定义指针j,指向第二个序列表的第一个元素
* (3)比较i,j指向的元素大小,若前者大,将后者插入到新表中 否...
分类:
编程语言 时间:
2014-05-07 06:21:54
阅读次数:
275
多个模块之间的关联(4)
前面搭建了客户以及客户父模块的一个分支,另一个分支是产品线,还有一个是业务员,然后这三条线归并到订单之上。
前面我贴了我要搭建系统的一张图,现在贴一下数据库的表和其之间的关系情况。
上图中表和我设计的简易销售管理系统是完全一致的。再看一下的模块图,稍微记下下其中的关系,对于看懂下面的内容很有必要。
...
分类:
其他好文 时间:
2014-05-06 21:55:42
阅读次数:
418
该算法基于一个简单的操作:
将两个有序的队列合成一个更大的有序队列。归并排序保证NlogN。原地归并的抽象算法(Abstract in-place merge):using
System;namespace MergeSort{ class Program { static...
分类:
其他好文 时间:
2014-05-06 14:34:28
阅读次数:
325
1 #include 2 #include 3 4 void MerageSort(int *A,
int low, int high); 5 void Merge(int *A, int low, int middle, int high); 6 7 int
main() 8 { ...
分类:
其他好文 时间:
2014-05-04 20:44:56
阅读次数:
417
在我们日常的程序开发时候,有时候需要对一个已知的集合按照一定的规则进行排序,其实当数据的规模不太大时或者数据的有序特征比较明显,其实我们可以采用其它的排序算法例如:Bubble
Sort, Insertion Sort , Shell Sort 等。 但是前面3中算法的共同特点是,都是从原始的列表里...
分类:
Web程序 时间:
2014-05-04 10:19:22
阅读次数:
337