1,快排void QuickSort( int a[] , int low , int high ){ int i = low , j = high ; int temp = a[i] ; while( i void /*MinHeap::*/FilterDown( T heapA...
分类:
其他好文 时间:
2014-08-11 02:53:41
阅读次数:
170
说明:归并排序: 时间 O(nlogn),空间 O(1). 每次将链表一分为二, 然后再合并。快排(用两个指针)
说明: 与顺序表不同的时,每次找插入位置时从头开始走。
分类:
其他好文 时间:
2014-08-10 01:40:39
阅读次数:
226
很简单的一个,就是总超时。问题出在我使用的短平快,简单直接的方式已经不灵了。 这种情况我总结以下原因: 1.尽量用STL模板容器,qsort()等内置,他们优化得很好 2.不用的话需要了解哈希算法。 本题用了快排与哈希,自己写也行(麻烦),不写的话用qsort与STL map,否则超时。...
分类:
其他好文 时间:
2014-08-09 18:16:48
阅读次数:
229
桶排序的基本思想
桶排序利用函数的映射关系,将待排序的数组分成了N个块(桶)。实际上,桶排序的f(k)值的计算,其作用就相当于快排中划分,已经把大量数据分割成了基本有序的数据块(桶)。然后只需要对每个桶中的少量数据做比较排序(比较排序:即在比较的基础上进行交换,达到排序效果)即可。
假如待排序列K= {49、 38 、 35、 97 、 76、 73 、 27、 49 }。这些数据全部在1—1...
分类:
其他好文 时间:
2014-08-09 00:19:17
阅读次数:
267
采用算法导论上的实现方式,用java实现。快排算法核心的部分便是partition过程,这里的partition采取最后一个元素作为pivot,i和j两个指针都从头向后扫描,如下图所示,数组被分为4个部分。算法执行的过程:代码实现:import java.util.Arrays;public cla...
分类:
其他好文 时间:
2014-08-07 18:05:30
阅读次数:
196
1 #include 2 #include 3 using namespace std; 4 #define max(a,b) (a>b)?a:b 5 #define min(a,b) (a>b)?b:a 6 class Interval 7 { 8 public: 9 ...
分类:
其他好文 时间:
2014-08-06 01:36:50
阅读次数:
232
众所周知,哈希的速度是灰常快的,敢号称时间复杂度为O(1)的,呵呵,它和快排有一拼(目前只有快排敢叫“快排”这个名号)。而且,它偏偏还非常好用,这注定了它不平凡的存在。倒是目前网说哈希时,多是介绍各种哈希函数的构造及如何避免冲突,然后动不动就扯到MD5这些东西上去了。照这样说来,貌似哈希不常用啊。其实说白了,管他那么多干嘛,就不冲突着用嘛,自然就省去了那些“拉链门”啊神马的东西了。平时没事来个哈希...
分类:
其他好文 时间:
2014-08-05 19:27:50
阅读次数:
398
QuickSortIn the previous challenge, you wrote a partition method to split an array into 2 sub-arrays, one containing smaller elements and one containi...
分类:
其他好文 时间:
2014-08-02 12:12:53
阅读次数:
512
/*
中文题意:
中文翻译:
题目大意:求会场的最大安排数,一个时间内只能安排一个活动
解题思路:用结构体将数输入,之后再用结构体一级排序,将活动的结束时间排序,然后根据开始时间要大于上一场活动的结束时间,选出可安排的活动数
难点详解:掌握一级结构体的快排和比较的知识;(这种快排现在还不是很熟)
关键点:贪心
解题人:lingnichong
解题时间:2014/07/31 ...
分类:
其他好文 时间:
2014-07-31 17:02:57
阅读次数:
213
题目描述:“今年暑假不AC?”“是的。”“那你干什么呢?”“看世界杯呀,笨蛋!”“@#$%^&*%...”确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要...
分类:
其他好文 时间:
2014-07-30 23:48:05
阅读次数:
269