栈和队列
月落乌啼霜月落
在减肥路上越走越远的废宅。。。
目前坐标 厦门U3D工程师
~~~算法赛高!!!!!
展开
-
数据结构实验之栈:行编辑器
Problem Description 一个简单的行编辑程序的功能是:接受用户从终端输入的程序或数据,并存入用户的数据区。 由于用户在终端上进行输入时,不能保证不出差错,因此,若在编辑程序中,“每接受一个字符即存入用户数据区”的做法显然不是最恰当的。较好的做法是,设立一个输入缓冲区,用以接受用户输入的一行字符,然后逐行存入用户数据区。允许用户输入出差错,并在发现有误时可以及时更正。例如,当用户发原创 2017-01-16 20:54:31 · 331 阅读 · 0 评论 -
C++ 队列 头文件(不定期更新)
inculdeincludeusing namespace std; //这几个头文件必不可少int main() { queue q; //使用前需定义一个queue变量,且定义时已经初始化 while(!q.empty()) q.pop(); //重复使用时,用这个初始化 q.push(1); //进队列 q.pop(); //出队列原创 2017-02-14 09:00:03 · 1030 阅读 · 0 评论 -
数据结构实验之栈七:出栈序列判定
Think: 一开始WA了2发, 原因是把 stack 放在的 cin >> T 前面, 不能起到 中间栈的作用, 后来放到数据中间就AC了~~~思路:判断 a[i] == b[j] 是否成立, 如果成立的话就更新, 否则的话 就进行判断, 如果 栈顶元素与b[j] 相同的话就出栈 同时更新b[j]; 如果 栈顶元素与b[j]不同时, 就将a[i]压入栈中;Problem Descrip原创 2017-05-25 21:15:48 · 418 阅读 · 0 评论 -
数据结构实验之栈三:后缀式求值
Problem Description 对于一个基于二元运算符的后缀表示式(基本操作数都是一位正整数),求其代表的算术表达式的值。 Input 输入一个算术表达式的后缀式字符串,以‘#’作为结束标志。 Output 求该后缀式所对应的算术表达式的值,并输出之。 Example Input59*684/-3*+#Example Output57#include<bits/stdc++.h>原创 2017-05-25 20:54:03 · 245 阅读 · 0 评论 -
数据结构实验之队列一:排队买饭(队列)
Think: 模拟队列 的 入队和 出队的情况 就好了~~~Problem Description中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是很聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,并且买菜就送豆浆,吸引了不少童鞋。所以有时吧,人还是很多的,排队是免不了的,悲剧的是超市只有两个收银窗口。 问题是这样的:开始有原创 2017-08-03 11:12:01 · 1030 阅读 · 0 评论 -
数据结构实验之栈三:后缀式求值
Think: 利用栈的性质, 将操作数进行储存即可Problem Description对于一个基于二元运算符的后缀表示式(基本操作数都是一位正整数),求其代表的算术表达式的值。 Input输入一个算术表达式的后缀式字符串,以‘#’作为结束标志。 Output求该后缀式所对应的算术表达式的值,并输出之。 Example Input59*684/-3*+# Example Output57原创 2017-08-03 14:30:33 · 271 阅读 · 0 评论 -
Re0(单调栈)
Think: 因为要满足题意,所以优先 采用单调栈来进行解题。 这是春节的题目 2333, 然后半年过去了, 才写解题报告(手动滑稽)。 我的思路就是 建立结构体来储存 威胁数, 然后利用单调栈的特性来进行计算 威胁数, 进而储存。 输出时,输出相对应的a[key].cnt值即可~~Problem DescriptionRe0 虽然是老套的穿越剧情,但是却有着虐男主 (486) 的新奇点子。作原创 2017-08-07 08:54:59 · 238 阅读 · 0 评论