码迷,mamicode.com
首页 >  
搜索关键字:并排    ( 3427个结果
neu 1493 Caoshen like math(最小交换次数)
http://acm.neu.edu.cn/hustoj/problem.php?cid=1047&pid=4题意:数字1到n 任意排列 求排列成有序序列最少交换次数思路:求最小交换次数有两种 1 交换的两数必须相邻 (poj 2299) 通过归并排序求出其逆序数即为所求值 ...
分类:其他好文   时间:2015-02-01 16:01:00    阅读次数:502
poj 2299 Ultra-QuickSort(归并排序)
题意 :交换相邻的两个数来排序 最少交换几次思路:题意可以转化成求 数列中存在几个逆序数可以看作冒泡排序 但是复杂度过高 用归并排序来完成(注意 n#include#include#includeusing namespace std;int a[5000000+100];int t[5000000...
分类:编程语言   时间:2015-01-29 22:19:57    阅读次数:173
Leetcode#148 Sort List
原题地址链表归并排序真是恶心的一道题啊,哇了好多次才过。代码: 1 void mergeList(ListNode *a, ListNode *b, ListNode *&h, ListNode *&t) { 2 h = t = NULL; 3 while (a && b) { 4 ...
分类:其他好文   时间:2015-01-29 20:59:24    阅读次数:155
几种排序算法及其代码实现(四)
四、归并排序 1、基本思想:归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。 2、实例 3、java实现  1 packagecom.sort;  2  3 //稳定  4 public class 归并排序{  5    public static...
分类:编程语言   时间:2015-01-29 17:45:03    阅读次数:213
算法系列笔记1(排序)
本次主要记录一些经典的排序算法,其中包括冒泡排序、直接选择排序、插入排序、归并排序、快速排序、堆排序、希尔排序、桶排序以及计数排序和基数排序。首先会给出这些排序算法的基本思想,然后给出实现的代码,最后会给出其时间复杂度。 1:冒泡排序 思想: (1):比较相邻的前后两个元素,如果后面的数据小于前面的数据,则交换这两个数据的位置。这样经过一次遍历,最小的元素将在第0个位置,属于”冒泡”. (...
分类:编程语言   时间:2015-01-29 17:39:27    阅读次数:288
FZU 2178 礼物分配 (折半搜索+二分)
题目地址:FZU 2178 由于n最大是30,一次全搜的话妥妥的超时,那么可以采用折半搜索。分成相同的两份,对左边的一堆进行预处理,然后再处理右堆,每一次都对左堆进行二分,找最接近的。由于两个人取的不能相差多于1个,所以要对每个个数分开存储。并排序,排序是为了后边的二分。 代码如下: #include #include #include #include #include #inc...
分类:其他好文   时间:2015-01-29 17:35:12    阅读次数:113
各种排序时间空间复杂度稳定性分析
下面是常见排序算法的速度比较:(从慢到快) 1、冒泡排序O(N^2) 2、简单选择排序O(N^2) 3、直接插入排序O(N^2) 4、折半插入排序O(N^2) 5、希尔排序,近似为O(N^1.25)     (尚无定论,但可以确定是N~N^2之间的多项式时间复杂度) 6、堆排序O(NlogN) 7、归并排序O(NlogN) 8、快速排序O(NlogN) 一般来说是快排最快的。但是...
分类:编程语言   时间:2015-01-29 09:34:09    阅读次数:274
排序比较
各种排序运行时间比较以下表格展现各算法的运行时间:算法最坏情况运行时间平均情况/期望运行时间插入排序θ(n2)θ(n2)归并排序θ(nlgn)θ(nlgn)堆排序O(nlgn)—快速排序θ(n2)θ(nlgn)建立一个类,将之前写的各种排序算法纳入其中,Code如下: class SortMe...
分类:编程语言   时间:2015-01-28 21:04:02    阅读次数:337
Python实现合并排序MergeSort
Python 合并函数
分类:编程语言   时间:2015-01-28 00:52:56    阅读次数:209
[C++]LeetCode: 125 Sort List (归并排序链表)
题目:Sort a linked list in O(n log n) time using constant space complexity. 思路:题目要求我们使用常数空间复杂度,时间复杂度为O(nlog(n)). 满足这个时间复杂度的有快速排序,归并排序,堆排序。插入排序时间复杂度为O(n^2). 双向链表用快排比较合适,堆排序也可用于链表,单项链表适合于归并排序。我们就用归并排序的...
分类:编程语言   时间:2015-01-27 11:13:51    阅读次数:190
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!