稳定排序:*泡沫排序(bubble sort)— O(n²)*插入排序 (insertion sort)— O(n²)*桶排序 (bucket sort)— O(n);需要O(k)额外空间*计数排序(counting sort) — O(n+k);需要O(n+k)额外空间*合并排序 (merge s...
分类:
编程语言 时间:
2015-09-22 14:21:28
阅读次数:
280
//一下内容为转载/** * 合并操作(merge),也叫合并算法,指的是将两个已经排序的序列合并成一个序列的操作。 * 合并排序算法依赖合并操作。 * * 合并操作的过程如下: * * 1、申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列 * 2、设定两个指针,最初位置分别为两...
分类:
编程语言 时间:
2015-09-18 21:46:16
阅读次数:
234
分治法是按照以下方案工作的: 将问题的实例划分为同一个问题的几个较小的实例,最好拥有同样的规模 对这些较小的实例求解(一般使用递归方法,但在问题规模足够小的时候,有时会利用另一种算法以提高效率) 如果必要的话,合并较小问题的解,以得到原始问题的解 分治法的流程: 4.1 合并排序 合并排序是成功应用...
分类:
编程语言 时间:
2015-09-18 15:05:33
阅读次数:
366
javascript 排序算法排序算法来自《JavaScript 标准教程(alpha)》,by 阮一峰目录冒泡排序选择排序插入排序合并排序快速排序参考链接冒泡排序冒泡排序(Bubble Sort)是最易懂的排序算法,但是效率较低,生产环境中很少使用。它的基本思想是,依次比较相邻的两个数,如果不符合...
分类:
编程语言 时间:
2015-08-30 00:35:15
阅读次数:
314
题目链接:http://codeforces.com/gym/100609/attachments
题目大意:有n张牌,每张牌有红色和蓝色两面,两面分别写了一些数字,同种颜色的任意两个数字若排在前面的数字比排在后面的数字大就叫做一对逆序数。求怎样排序得到的逆序数对最少。
解题思路:其中一种颜色的数字是顺序且这种颜色数字相同时对应的另一种颜色的数字是顺序时得到的逆序数对数最少。难点在于求逆序数对...
分类:
编程语言 时间:
2015-08-28 23:25:02
阅读次数:
259
源代码如下:
这里的Key 不当为关键字对待, 而是把Item.c作为关键字对待
#include
#include
//#define Key int
typedef int Key;
struct Item{
Key key;
char c;
};
typedef struct STnode* link;
struct STnode{
Item item ; li...
分类:
编程语言 时间:
2015-08-20 10:37:16
阅读次数:
122
Sort List
Sort a
linked list in O(n log n)
time using constant space complexity.
解题思路:
题意为以常量存储空间和O(nlogn)时间复杂度来排序链表。
可以用合并排序法,并用双指针法来找到中间节点。
产生一个头结点方便编码。
/**
* Definition for singly-link...
分类:
其他好文 时间:
2015-08-17 17:30:45
阅读次数:
161
一、综述
归并排序(Merge sort,台湾译作:合并排序)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide
and Conquer)的一个非常典型的应用。
算法描述
归并操作的过程如下:
申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列设定两个指针,最初位置分别为两个已经排序序列的起始位置比较两个...
分类:
编程语言 时间:
2015-08-08 16:40:13
阅读次数:
114
【088-Merge Sorted Array(合并排序数组)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.
Note:
You may assume that nums1...
分类:
编程语言 时间:
2015-08-05 07:46:52
阅读次数:
149
归并排序(求逆序数)归并排序:递归+合并+排序时间复杂度:O(n logn)空间复杂度:O(n)用途:1.排序 2.求逆序对数DescriptionIn this problem, you have to analyze a particular sorting algorithm. The alg...
分类:
编程语言 时间:
2015-08-04 22:20:25
阅读次数:
113