栈和队列
。。。
夜阑優珲
我是真的懒。
展开
-
舞会(DS线性结构)
题目问题 B: 舞会(DS线性结构)时间限制: 1 Sec 内存限制: 128 MB提交: 7 解决: 6[提交][状态][讨论版]题目描述假设在周末舞会上,男士和女士们分别进入舞厅,各自排成一队。跳舞开始,依次从男队和女队队头各出一人配成舞伴,若两队初始人数不同,则较长那一队未配对者等待下一轮舞曲。现要求写一算法模拟上述舞伴配对问题。 你需要用队列操作实现上述算法输入先输入参加舞会人数,再分别输入参加舞会人的姓名和性别输出先输出配对的男女舞伴,若队伍有剩人,则输出剩下人性别及剩原创 2021-01-03 20:05:43 · 325 阅读 · 0 评论 -
火车站(DS线性结构)
题目问题 B: 火车站(DS线性结构)时间限制: 1 Sec 内存限制: 128 MB提交: 11 解决: 6[提交][状态][讨论版]题目描述火车站只有一条铁路,所有的火车都停在那里。所以所有的火车都是从一边进站,从另一边出站。如果A列先进入铁路,然后B列在A列离开之前进入铁路,那么A列在B列离开之前不能离开。下图说明了问题所在。车站里最多有9列火车,所有的火车都有一个ID(编号从1到N),火车按照O1的顺序进入火车,火车是否可以按照O2的顺序驶出。输入输入包含几个测试用例。原创 2021-01-02 20:24:34 · 719 阅读 · 0 评论 -
拯救公主 (Ver. I)
题解迷宫问题既可以用DFS也可以用BFS。DFS的优点在于方便得到起点到终点的准确路径,而BFS优点则是较为简单,且得到的路径长度是起点到终点的最短路径。...xxxx.x.x....x.x.x..x...x..xxxxx........比如这个迷宫用DFS得到的就不是最短路径,而BFS在每增加一步时会包含该步所有可能的通路,所以最先到终点的就一定最短路径。题目问题 E: 拯救公主 (Ver. I)时间限制: 1 Sec 内存限制: 128 MB提交: 112 解决: 3原创 2021-01-01 21:26:15 · 253 阅读 · 0 评论 -
DS队列--组队列
题目问题 C: DS队列--组队列时间限制: 1 Sec 内存限制: 128 MB提交: 912 解决: 362[提交][状态][讨论版]题目描述组队列是队列结构中一种常见的队列结构,在很多地方有着广泛应用。组队列是是指队列内的元素分组聚集在一起。组队列包含两种命令:1、 ENQUEUE,表示当有新的元素进入队列,首先会检索是否有同一组的元素已经存在,如果有,则新元素排在同组的最后,如果没有则插入队列末尾。2、 DEQUEUE,表示队列头元素出队3、 STOP,停止操作建议使原创 2020-12-19 16:45:23 · 1534 阅读 · 2 评论 -
DS队列----银行单队列多窗口模拟
题解题目问题 E: DS队列----银行单队列多窗口模拟时间限制: 1 Sec 内存限制: 128 MB提交: 497 解决: 255[提交][状态][讨论版]题目描述假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙。当有窗口空闲时,下一位顾客即去该窗口处理事务。当有多个窗口可选择时,假设顾客总是选择编号最小的窗口。本题要求输出前来等待服务的N位顾客的平均等待时间、最长等待时间、最后完成时间。输入输入第1行给出正整数N(≤1000),为顾原创 2020-12-12 22:50:22 · 784 阅读 · 0 评论 -
DS队列----银行简单模拟
题目:问题 D: DS队列----银行简单模拟时间限制: 1 Sec 内存限制: 128 MB提交: 630 解决: 304[提交][状态][讨论版]题目描述设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。输入输入为一行正整数,其中第1个数原创 2020-11-23 21:36:54 · 409 阅读 · 0 评论 -
DS队列+堆栈--数制转换
题目:问题 B: DS队列+堆栈--数制转换时间限制: 1 Sec 内存限制: 128 MB提交: 340 解决: 285[提交][状态][讨论版]题目描述对于任意十进制数转换为k进制,包括整数部分和小数部分转换。整数部分采用除k求余法,小数部分采用乘k取整法例如x=19.125,求2进制转换整数部分19, 小数部分0.12519 / 2 = 9 … 1 0.125 * 2 = 0.25 … 09 / 2 = 4 … 1 0.25 * 2 = 0.5原创 2020-11-23 20:17:04 · 911 阅读 · 0 评论 -
DS堆栈--迷宫求解
题目:问题 F: DS堆栈--迷宫求解时间限制: 1 Sec 内存限制: 128 MB提交: 527 解决: 333[提交][状态][讨论版]题目描述给出一个N*N的迷宫矩阵示意图,从起点[0,0]出发,寻找路径到达终点[N-1, N-1]要求使用堆栈对象来实现,具体算法参考课本3.2.4节51页输入第一行输入t,表示有t个迷宫第二行输入n,表示第一个迷宫有n行n列第三行起,输入迷宫每一行的每个方格的状态,0表示可通过,1表示不可通过输入n行以此类推输入下一个迷宫原创 2020-11-10 22:22:09 · 690 阅读 · 0 评论 -
DS堆栈--表达式计算
题目:问题 E: DS堆栈--表达式计算时间限制: 1 Sec 内存限制: 128 MB提交: 370 解决: 245[提交][状态][讨论版]题目描述计算一个表达式的运算结果使用C++自带stack堆栈对象来实现参考课本的伪代码,把伪代码改造成可运行的代码课本伪代码请下载本附件:表达式伪c代码例如1. Push (OPTR, '#');表示把字符#压入堆栈OPTR中,转换成c++代码就是OPTR.push('#');2. Pop(OPND, a); 表示弹出栈OPND的原创 2020-11-10 15:21:12 · 1414 阅读 · 0 评论 -
DS栈--Web导航
题目:问题 D: DS栈--Web导航时间限制: 1 Sec 内存限制: 128 MB提交: 530 解决: 301[提交][状态][讨论版]题目描述标准Web浏览器包含在最近访问过的页面之间前后移动的功能。 实现这些功能的一种方法是使用两个堆栈来跟踪可以通过前后移动到达的页面。 在此问题中,系统会要求您实现此功能。需要支持以下命令:BACK:将当前页面推到前向堆栈的顶部。 从后向堆栈的顶部弹出页面,使其成为新的当前页面。 如果后向堆栈为空,则忽略该命令。FORWARD:将当前页面推到原创 2020-11-09 21:55:50 · 668 阅读 · 0 评论 -
DS堆栈--括号匹配
问题 C: DS堆栈--括号匹配时间限制: 1 Sec 内存限制: 128 MB提交: 396 解决: 343[提交][状态][讨论版]题目描述处理表达式过程中需要对括号匹配进行检验,括号匹配包括三种:“(”和“)”,“[”和“]”,“{”和“}”。例如表达式中包含括号如下:( ) [ ( ) ( [ ] ) ] { }1 2 3 4 5 6 7 8 9 10 11 12从上例可以看出第1和第2个括号匹配,第3和第10个括号匹配,4和5匹配,6和9匹配,7和8匹配,11和12匹配。原创 2020-11-04 12:12:43 · 415 阅读 · 0 评论 -
DS堆栈--行编辑
问题 B: DS堆栈--行编辑时间限制: 1 Sec 内存限制: 128 MB提交: 430 解决: 352[提交][状态][讨论版]题目描述使用C++的STL堆栈对象,编写程序实现行编辑功能。行编辑功能是:当输入#字符,则执行退格操作;如果无字符可退就不操作,不会报错本程序默认不会显示#字符,所以连续输入多个#表示连续执行多次退格操作每输入一行字符打回车则表示字符串结束注意:必须使用堆栈实现,而且结果必须是正序输出输入第一行输入一个整数t,表示有t行字符串要输入第二行起输原创 2020-11-03 23:10:57 · 276 阅读 · 0 评论 -
DS堆栈--逆序输出
问题 A: DS堆栈--逆序输出(STL栈使用)时间限制: 1 Sec 内存限制: 128 MB提交: 399 解决: 345[提交][状态][讨论版]题目描述C++中已经自带堆栈对象stack,无需编写堆栈操作的具体实现代码。本题目主要帮助大家熟悉stack对象的使用,然后实现字符串的逆序输出输入一个字符串,按字符按输入顺序压入堆栈,然后根据堆栈后进先出的特点,做逆序输出stack类使用的参考代码n包含头文件<stack> : #include <sta原创 2020-11-03 21:10:59 · 859 阅读 · 0 评论