在windows下的VC编译或者Mac OX的XCode下编译也许不会出问题。但是在linux下可能就会挂掉。比如我上一篇里的poj4093出现了编译错误2007120.8890/Main.cc: In function ‘int main()’:2007120.8890/Main.cc:50:44...
分类:
其他好文 时间:
2014-07-19 15:29:47
阅读次数:
225
这是一篇Dr. Dobb's Journal对STL之父stepanov的采访。文中数次提到STL的基本思想、语言的特性、编程的一些根本问题等,非常精彩。这篇文章让我想去拜读下stepanov的大作《Elements of Programming》了。原文链接:http://www.stepanov...
分类:
其他好文 时间:
2014-07-19 15:27:45
阅读次数:
352
这道题最重要的不仅是hash这种算法,更要学会利用好STL中的才行。将连续的L个字符经过hash赋值,最后线性判断。其中的判断步骤用到了map的插入特性。#include #include #include #include #include using namespace std;#define ...
分类:
其他好文 时间:
2014-07-19 15:22:52
阅读次数:
167
search
-------------------------------------------------------------------------
描述:在序列一[first1, last1) 所涵盖的区间中,查找序列二[first2, last2) 的首次出现点。
思路:
1.遍历序列二
2.如果两序列的当前元素一样,都前进 1
3.否则序列二的迭代器重新指向开始元素,序列一前进 1 ,序列一的长度减 1
复杂度:
最坏情况是平方: 最多 (last1 - first1) * (last2...
分类:
其他好文 时间:
2014-07-19 08:20:52
阅读次数:
212
includes(应用于有序区间)
-------------------------------------------------------------
描述:S1和S2都必须是有序集合,判断序列二 S2 是否"涵盖于"序列一 S1,即"S2的每一个元素是否都出现于 S1中"
思路:
1.遍历两个区间,直到其中一个走完
2.如果序列二的元素小于序列一的元素,则在序列一中不可能有元素等于序列二的当前元素了,直接返回 false
3.如果序列一的元素小于序列二的元素,则序列一前进 1
4.如果两序列元...
分类:
其他好文 时间:
2014-07-19 08:05:28
阅读次数:
180
rotate
--------------------------------------------------------------
描述:将[first, middle) 内的元素和[middle, last) 内的元素互换。
图6-6g
/*------------------------------------------------------------
*分派函数(dispatch function)
*/
template
inline ...
分类:
其他好文 时间:
2014-07-19 08:00:26
阅读次数:
259
给出几组比赛的胜负情况。判断最后的排名。根据题意这就是一个明显的拓扑排序问题了。
注意
如果因为可能的排名有多种情况,这时要保证编号小的在前。
题目输入的数据可能有重复边
拓扑排序
首先统计每个结点的入度。将度为0的结点编号放入队列(此题放入优先队列中)中。
然后进行循环:
取出队头结点,视作边的起点。
然后“删除与该点相连的边”,代码就是将这个图中的该边另一个结点(即终点)的入度减一;
如果减一以后,终点的入度变为了0,那么将终点的编号入队列。
判断队列是否为空,若不空,则回到1...
分类:
其他好文 时间:
2014-07-19 02:25:55
阅读次数:
175
A simple 1D searching problem. Binary search of course.But.. STL has already done it for you:class Solution {public: int searchInsert(int A[], int ...
分类:
其他好文 时间:
2014-07-18 18:35:41
阅读次数:
205
解题思路:
有m行,每行n个数,从每行中取出一个数相加一起求出sum,这样的sum有n的m次方个。要求的前n个最小的sum值。
第一次使用STL里面的堆,一开始对pop_heap()有点不太理解,后来明白了,比如对数组heap[n],最大下标为n-1建堆,默认的是建立大顶堆,heap[0]是数组中最大的数,写一条pop_heap()语句,就是把heap[0]和
heap[n...
分类:
其他好文 时间:
2014-07-18 14:11:34
阅读次数:
281
想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qsort,总算把自己解脱了~所以自己总结了一下,首先看sort函数见下表:函数名功能描述sort对给定区间所有元素进行排序stable_sort对给定区间所有元素进行稳定排序partial_sort对给定区间所有元...
分类:
其他好文 时间:
2014-07-18 10:38:04
阅读次数:
342