![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
栈和队列
_Crazy€
你来时冬至,但眉上风止,开口是‘我来的稍稍迟’。大抵知心有亭树,亭亭一如你风致。
展开
-
sdutoj 离散事件模拟-银行管理(C++)
题目要求Problem Description现在银行已经很普遍,每个人总会去银行办理业务,一个好的银行是要考虑 平均逗留时间的,即: 在一定时间段内所有办理业务的人员逗留的时间的和/ 总的人数。逗留时间定义为 人员离开的时间减去人员来的时间。银行只有考虑了这一点,我们在办理业务的时候,才不会等太多的时间。为了简化问题,我们认为银行只有一号窗口和二号窗口可以办理业务 ,并且在时间范围是12&...原创 2019-07-29 13:09:20 · 404 阅读 · 2 评论 -
优先队列priority_queue的使用说明(c++)
优先队列的头文件#include<queue>声明样式priority_queue <int> i;priority_queue <double> d;//以上两条默认为从大到小排列;priority_queue <node> q;//node是一个结构体//结构体里重载了‘<’小于符号priority_queue <...原创 2019-07-29 16:03:00 · 100 阅读 · 0 评论 -
中缀表达式转化为后缀表达式(栈思想)
步骤说明:举例说明a*(b+c)/d= ? 转化为后缀表达式为:abc+*d/=?变化过程为:1、碰到运算数就输出;2、碰到号放入栈3、碰到左括号,左括号的优先级比号的优先级高,so把左括号放进栈中;4、碰到运算数b,直接输出;5、当左括号放进栈中的时候,优先级降到最低,so+号的优先级比左括号高,放进栈中,并把c输出;6、当碰到右括号的时候,把栈顶的元素以此依次输出知直到碰...原创 2019-07-30 20:22:23 · 1002 阅读 · 0 评论 -
栈和队列函数的基本操作(c++)
栈//s.empty(); //如果栈为空则返回true, 否则返回false;//s.size(); //返回栈中元素的个数//s.top(); //返回栈顶元素, 但不删除该元素//s.pop(); //弹出栈顶元素, 但不返回其值//s.push(); //将元素压入栈顶队列//q.em...转载 2019-07-30 20:58:11 · 591 阅读 · 0 评论 -
队列中的循环队列用法说明
循环队列样式结构图:优点:解决了顺序队列只能从队尾插入元素而导致空间的浪费;问题:在循环队列中,空队特征是front = rear, 队满时也会有front = rear; 判断条件将出现二义性;解决方法1、使用额外的标记(1)引入Size标记来记录队列的长度,当size为队列最大长度时为满,size=0为空;(2)引入tag标记删除时tag=0,插入时tag=1;当fron...原创 2019-07-30 21:36:42 · 1580 阅读 · 0 评论 -
数据结构:下一较大值(栈的思想)
例题:Problem Description对于包含n(1<=n<=100000)个整数的序列,对于序列中的每一元素,在序列中查找其位置之后第一个大于它的值,如果找到,输出所找到的值,否则,输出-1。Input输入有多组,第一行输入t(1<=t<=10),表示输入的组数;以后是 t 组输入:每组先输入n,表示本组序列的元素个数,之后依次输入本组的n个元素。Out...原创 2019-09-13 15:07:39 · 179 阅读 · 0 评论