![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STL
文章平均质量分 53
布布要成为最负责的男人
本科湖中大,硕士推免至南航,全栈领域,冲击大厂高薪ing
展开
-
hdu 1027 “Ignatius and the Princess II“——next_permutation简单应用
Problem DescriptionNow our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. feng5166 says, “I have three question for you, if you ca原创 2022-01-12 16:38:13 · 243 阅读 · 0 评论 -
hdu 2094 “产生冠军”——set容器的应用
有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。球赛的规则如下:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场撕杀之后,确定是否已经实际上产生了冠军。Input输入含有一些选手群,每群选手都以一个整数n(n<1000)开头,后跟n对选手的比赛结果,比赛结果以一原创 2022-01-12 16:06:43 · 103 阅读 · 0 评论 -
hdu 1873“看病要排队”——优先队列的应用
hdu 1873 看病要排队题目描述看病要排队这个是地球人都知道的常识。不过经过细心的0068的观察,他发现了医院里排队还是有讲究的。0068所去的医院有三个医生(汗,这么少)同时看病。而看病的人病情有轻重,所以不能根据简单的先来先服务的原则。所以医院对每种病情规定了10种不同的优先级。级别为10的优先权最高,级别为1的优先权最低。医生在看病时,则会在他的队伍里面选择一个优先权最高的人进行诊治。如果遇到两个优先权一样的病人的话,则选择最早来排队的病人。现在就请你帮助医院模拟这个看病过程。输入输入原创 2022-01-12 15:25:17 · 233 阅读 · 0 评论 -
算法学习:动态规划
基础DP(状态转移和递推)1.硬币问题有多个不同面值的硬币,输入最少硬币组合。这里要是用贪心,所得组合和实际可能不符合。利用dp法,代码如下:#include<bits/stdc++.h>using namespace std;const int MONEY=1001; //定义最大金额const int VALUE=5; //5种硬币int type[VALUE]={1,5,10,25,50};原创 2021-12-08 10:20:50 · 749 阅读 · 5 评论 -
HNUCM-1435 最大最小值(分治法)
题目描述使用分治算法,求一个数组中的最大数和最小数。输入多组数据输入,每组第一个数字为数组的长度n, 然后接下输入n个整数输出依次输出数组中的最大值与最小值样例输入5 1 5 2 4 36 1 2 3 4 5 6样例输出5 16 1提示可以将数组中的数据分为两组,分别求每一组的最大数和最小数,然后再比较这两组数的最大数和最小数分析:分治法,即分而治之,将大问题分解为各个小问题,求解出小问题,则可以使用递归。每次递归将数列拆解成2部分,分别求出最大最小值当递归到first=原创 2021-12-04 21:04:02 · 1138 阅读 · 0 评论 -
HNUCM-1322:调酒壶里的酸奶
题目描述最近小w学了一手调酒的技巧,这么帅的操作,说不定能靠这个俘获女神的芳心,为了在女神面前露一手,他想在学校里建一个"pub",但是显然学校不可能让他真的建一个"pub",那么他退而求次,想建一个"Yogurt shop",不能用酒,那用酸奶也行啊!今天女神终于来光顾小w的酸奶店了!兴奋的小w拿出自己准备已久每天都仔细擦干净的装备——调酒壶、果汁机、隔冰器和计量杯、砧板、小刀…准备露一手给女神看看但是女神却没有那么多耐心,女神只是觉得,自己买一瓶大酸奶喝不完,小瓶酸奶不够喝,所以在小w的酸奶店,说原创 2021-12-04 10:25:53 · 587 阅读 · 0 评论 -
算法学习:搜索技术
一、递归和排列问题1:打印n个数的全排列,共n!个问题2:打印n个数中任意m个数的全排列,共n!/m!个问题3:打印n个数中任意m个数的组合,共n!/[m!(n-m)!]个例题:Ray又对数字的列产生了兴趣:现有四张卡片,用这四张卡片能排列出很多不同的4位数,要求按从小到大的顺序输出这些4位数。Input每组数据占一行,代表四张卡片上的数字(0<=数字<=9),如果四张卡片都是0,则输入结束。Output对每组卡片按从小到大的顺序输出所有能由这四张卡片组成的4位数,千位数字相原创 2021-11-29 19:50:09 · 409 阅读 · 0 评论 -
(超详细)算法学习:STL和基本数据结构
STL容器vector栈队列链表setmapsort函数next_permulation函数容器1.顺序式容器:vector,list,deque,queue,priority_queue,stack等;2.关联式容器:set,multiset,map,multimap等vectorvector容器能存放任何类型的对象:功能例子说明赋值a.push_back(100);在尾部添加元素元素个数int size=a.size();元素个数原创 2021-10-16 00:28:16 · 729 阅读 · 0 评论 -
算法(algorithm):#include<algorithm>
注意:以下的first,last等数指代迭代器,不是数值,懒得打iterator1.变序型队列算法reverse(first,last):将first和last之间的元素翻转过来copy(first,last-1,result):将[first,last-1]内的队列成员复制到区间[result,result+(last-first)-1]中swap:单值交换swap_ranges(first1,last1,first2):将两个相等区间的值交换位置:[first1,last1-1]和[last2原创 2021-09-19 20:37:19 · 248 阅读 · 0 评论 -
deque容器
功能双端数组,可以对头端进行插入删除操作deque与vector区别1.vector对于头部的插入删除效率低,数据量越大,效率越低2.deque相对而言,对头部的插入删除速度会比vector快3.vector访问元素时的速度会比deque快,这与两者内部实现有关deque内部工作原理:deque内部有个中控器,维护每段缓冲区中的内容,缓冲区中存放真实数据中控器维护的是每个缓冲区的地址,使得使用deque时像一片连续的内存空间deque容器的迭代器也是支持随机访问的构造函数:#incl原创 2021-07-24 21:38:19 · 125 阅读 · 0 评论 -
字符串简单操作(C++中的strrev函数)
C++中有函数strrev,功能是对字符串实现反转,但是要记住,strrev函数只对字符数组有效,对string类型是无效的。如下题所示:Ignatius likes to write words in reverse way. Given a single line of text which is written by Ignatius, you should reverse all the words and then output them.InputThe input contains s原创 2021-07-19 22:45:23 · 645 阅读 · 0 评论 -
vector容器——插入和删除
函数原型push_back(ele) //尾部插入元素pop_back() //删除尾部元素insert(const_iterator pos,ele) //迭代器指向位置pos插入eleinsert(const_iterator pos,int count,ele) //迭代器指向pos插入count个元素eleerase(const_iterator start,const_iterator end) //删除迭代器从start到end之间的元素clear() //删除容器中所有元素示原创 2021-04-29 22:10:47 · 218 阅读 · 0 评论 -
vector容器——容量和大小
函数原型empty() //判断容器是否为空capacity() //容器的容量size() //返回容器元素的个数resize(int num) //重新指定容器的长度num,若容器变长,则以默认值(0)填充新位置如果容器变短,则末尾超出容器长度的元素将被删除resize(int num,elem) //重新指定容器的长度num,若容器变长,则以elem填充新位置若容器变短,则末尾超出容器长度的元素被删除示例#include<iostream>#include<c原创 2021-04-29 21:53:57 · 1058 阅读 · 0 评论 -
vector容器——赋值操作
函数原型assign(beg,end) //将[beg,end)区间中的数据拷贝赋值给本身assign(n,elem) //将n个elem拷贝赋值给本身示例:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<numeric>#include<set>#incl原创 2021-04-29 21:28:31 · 733 阅读 · 0 评论 -
vector容器——构造函数
vector容器基本概念功能:与数组非常相似,也称为单端数组与普通数组的区别:vector容器可以实现动态拓展,普通数组不行动态拓展并不是在原空间之后续借新空间,而是找到更大的内存空间,然后将原数据拷贝到新空间,释放原空间vector容器的迭代器是支持随机...原创 2021-04-25 12:10:36 · 306 阅读 · 1 评论 -
string容器字符存取
方式:1.利用[]直接读取(类似于C语言中的字符数组)2.利用at示例:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<numeric>#include<set>#include<map>#define ll long longusing names原创 2021-04-25 11:40:23 · 144 阅读 · 1 评论 -
string字符串比较
比较方式字符串的比较是按字符串的ASCII码进行对比字符串相等:返回0前者大于后者:返回1后者大于前者:返回-1示例:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<numeric>#include<set>#include<map>#defi原创 2021-04-25 11:35:16 · 198 阅读 · 1 评论 -
容器算法迭代器初识----容器嵌套容器
直接上代码,完成目标目标:实现容器嵌套容器,将所有数据遍历输出#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<numeric>#include<vector>#define ll long longusing namespace std;void test(){原创 2021-04-24 15:23:17 · 277 阅读 · 1 评论