![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STL
MiniSheep_CS
编程者如上帝,可以创造万物。
展开
-
Uva 10881蚂蚁
最近看刘汝佳的大白书发现他这题的代码好像不太完善,经过个人理解和分析原创 2014-07-26 23:48:28 · 735 阅读 · 0 评论 -
POJ2503 Babelfish(Map键值对的应用)
BabelfishTime Limit: 3000MS Memory Limit: 65536KTotal Submissions: 35424 Accepted: 15146DescriptionYou have just moved from Waterloo to a big city. The people her原创 2015-06-02 11:47:43 · 358 阅读 · 0 评论 -
POJ1273 Drainage Ditches(最大流)
Drainage DitchesTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 60927 Accepted: 23381DescriptionEvery time it rains on Farmer John's fields, a pond form原创 2015-05-24 18:37:10 · 344 阅读 · 0 评论 -
hdu 2648(Shopping) STL map的使用
ShoppingTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2018 Accepted Submission(s): 666Problem DescriptionEvery girl likes shop原创 2014-11-02 14:56:16 · 570 阅读 · 0 评论 -
STL之priority_queue的使用
priority_queue说明:优先队列的实现就不说了,运用的是堆的知识,前几篇博客已经有提到。现在讲讲如何在比赛的时候直接用STL里面的队列头文件中的priority_queue来帮我们解题。下文有两种使用方法,一种是运用#include中的greater和less来帮我们实现数据的排序。还有一种是自定义,也就是自己写排序方法让priority_queue来根据我们排序方法来排序。代码原创 2015-02-13 18:02:12 · 505 阅读 · 0 评论 -
map的例子
题意:输入一堆字符串,然后可以任意替换其中的一个字母,给定一个最低底线(例如输入15)表示必须要有15个以上只有一个字母不同的字符串组成的数组(这里用map>,第一个表示当前遍历到的字符串,vector里面存的是和遍历到的字符串只差一个字母的那些字符串),然后要求你编程实现,下面为代码:#include#include#include#include#include#includ原创 2015-01-01 12:48:22 · 491 阅读 · 0 评论 -
二叉树的遍历
#include#include#includeusing namespace std;//二叉树结点typedef struct BiTNode{ //数据 char data; //左右孩子指针 struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;//按先序序列创建二叉树int CreateBiTree(BiTree &T原创 2014-12-22 18:37:52 · 497 阅读 · 0 评论 -
STL list容器实现集合的交和并
集合的交:#include#include#includeusing namespace std;templatelist intersection(const list &L1,const list &L2){ list intersect; typename list::const_iterator iterL1 = L1.begin(); typename原创 2014-12-21 20:16:32 · 497 阅读 · 0 评论 -
二叉堆的实现和详解(优先队列的基础)
二叉堆的基本内容:由于堆是一颗被完全填满的二叉树,所以最后一层是从左到右一次填入的,所以可以不必要链表表示(不连续),可以用数组表示比较节省开销(vector)。在堆操作中,两个比较重要和新的内容是上滤和下滤,个人总结了一下,插入新的结点的时候用上滤,删除最小结点的时候用下滤。还有一个值得注意的概念,它叫空穴,空穴顾名思义是空的,比如删除了根结点的元素,那么现在根结点即为空穴。好接下来我们原创 2015-01-11 22:29:54 · 739 阅读 · 0 评论 -
暴力法生成1~n的排列
#includeusing namespace std;void print_permutation(int n,int* A,int cur){int i,j;if(cur==n) //结束条件,递归边界{for(i=0;icout}elsefor(i=1;i//尝试在A[cur]中填各种整数i{int ok=1; for(j=原创 2014-07-07 12:24:38 · 596 阅读 · 0 评论 -
vector数组中删除相同元素(输入的元素输出时只能出现一次)
代码如下:#include#include#includeusing namespace std;int main(){ vector a; int m; cin>>m; int num; int i; for(i=0;i<m;i++) { cin>>num; a.push_back(num);原创 2015-06-07 19:46:52 · 549 阅读 · 0 评论