随笔分类 -  STL

摘要:输入若干组对应关系,然后输入应该单词,输出对应的单词,如果没有对应的输出eh此题的做法非常多,很多人用了字典树,还有有用hash的,也有用了排序加二分的(感觉这种方法时间效率最差了),这里我参考了MSDN中stl,使用了map,map是基于红黑树的,查询和插入的时间复杂度都是log(n),如果你构造了一个好的哈希函数的或也可以把时间复制度降到很低。字典树应该是最快的方法了,不过结构相对来说比较复杂,代码不大容易编写(对我而言)。以下只给出我写的使用map的代码#include #include #include #include using namespace std;map m;string 阅读全文
posted @ 2013-10-30 15:59 xindoo 阅读(181) 评论(0) 推荐(0)
摘要:题目链接 这两个题目是一样的,大概题意是有3个操作 add x, 在集合中加入x, del x 是删除x, sum 是求出由小到大排序后所有下标mod5等于3的数的和。 这个在hdoj上面,这个题给的时间比较多10s,我用了stl 里的vector和lower_bound, lower_bound 它的作用是返回不小于x的第一个数的位置,这样我们每次插入后就能保证他有序。 最终耗时6234MS,而这种方法在codeforces上超时了,cf只给了3000ms,这道题的标准做法是用线段树。先给出stl的做法//2013-05-18-20.17// hdoj 4288 cf 85d#include 阅读全文
posted @ 2013-05-18 20:38 xindoo 阅读(180) 评论(0) 推荐(0)
摘要:无疑是STL 中最大的一个头文件,它是由一大堆模板函数组成的。下面列举出中的模板函数:adjacent_find / binary_search / copy / copy_backward / count/ count_if / equal / equal_range / fill / fill_n / find /find_end / find_first_of / find_if / for_each / generate /generate_n / includes / inplace_merge / iter_swap /lexicographical_compare / lower 阅读全文
posted @ 2013-04-04 20:27 xindoo 阅读(192) 评论(0) 推荐(0)