摘要: 1 /** 2 * 合并排序是建立在归并操作上的一种有效的排序算法。最差,平均和最好都是O( nlogn ),空间复杂度O(n) 3 * 该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。值得注意的是归并排序是一种稳定的排序方法。 4 * 归并操作的工作原理如下: 5 * 第一步:申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列 6 * 第二步:设定两个指针,最初位置分别为两个已经排序序列的起始位置 7 * 第三步:比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置 8 * 重复步骤3直到某一指针超出... 阅读全文
posted @ 2014-03-11 16:35 soul390 阅读(175) 评论(0) 推荐(0)
摘要: 这有篇不错的介绍“快速排序”的博客:http://www.cnblogs.com/morewindows/archive/2011/08/13/2137415.html以下是Java代码 1 public class QuickSort { 2 public static void main(String[] args) { 3 int[] a = {4, 2, 1, 6, 3, 0, -5, 1, 1}; 4 qsort_asc(a, 0, a.length - 1); 5 6 for (int i = 0; i ... 阅读全文
posted @ 2014-03-11 14:23 soul390 阅读(208) 评论(0) 推荐(0)