博客作业03--栈和队列

本文总结了PTA实验中的三个任务:报数游戏、符号配对及银行业务队列模拟。详细介绍了每项任务的设计思路、伪代码实现,并分享了在解决过程中遇到的问题及解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.学习总结(2分)
1232108-20180407193518077-416434555.png

2.PTA实验作业(4分)

2.1 题目1:7-1 jmu-报数游戏
2.2 设计思路(伪代码或流程图)

 if m>n
   输出error!,返回
构造循环对列,将n个人编号入队
while(1)
{
    从1开始报数,报数即出队
    判断顺序是否为m,是就记录编号到数组a
    修改编号为-1,计数器归零
    入队
    if全部都报完,跳出循环
}
输出数组a
    

2.3 代码截图(注意,截图、截图、截图。代码不要粘贴博客上。不用用···语法去渲染)
1232108-20180407200348915-389169359.png

2.4 PTA提交列表说明。
1232108-20180407200533166-1378896673.png

这题就是忘了加一个m>n情况的判断

2.1 题目2:7-2 符号配对
2.2 设计思路(伪代码或流程图)

将所有的括号放入str1中,将/*,*/改成<,>
遍历数组
{
  if遇到左符号入栈 
  if遇到右符号 
  {
    栈空,报错退出 
    栈不空,栈顶出栈
    不匹配报错退出 
   }
}
if栈空且未报错,匹配成功,输出YES
else
栈内还有元素,栈底元素报错 

2.3 代码截图(注意,截图、截图、截图。代码不要粘贴博客上。不用用···语法去渲染)
1232108-20180407194826398-15587524.png

1232108-20180407194831954-1060769621.png

2.4 PTA提交列表说明。
1232108-20180407195045246-236770991.png

1232108-20180407195222286-80602585.png
输出的时候问号打反了,刚开始没用flag控制报错,然后看了几遍代码,就发现问题

2.1 题目3:7-2 银行业务队列简单模拟
2.2 设计思路(伪代码或流程图)

 先分窗口
if为偶数进队列2
else进队列1
while(两队列不空)
 {
    队列1出队两次
    队列2出队一次
 }
剩下那队的全部出队
输出
    

2.3 代码截图(注意,截图、截图、截图。代码不要粘贴博客上。不用用···语法去渲染)
1232108-20180407201214469-117045705.png

2.4 PTA提交列表说明。
1232108-20180407201249321-13164441.png
额,这题一次过

3.截图本周题目集的PTA最后排名(3分)
3.1 栈PTA排名
1232108-20180410220943397-258411487.png

3.2 队列PTA排名
1232108-20180412201228595-1750358001.png

3.3 我的总分:
255

  1. 阅读代码(必做,1分)
    1232108-20180407202027690-226397134.png
    同样是约瑟夫环问题,他用的是单循环链表,而我用循环队列,不同的是他报完数后真的从组里删除了,而我是将他改为-1来作为跳过他的条件
    他的循环次数肯定比我少了

  2. 代码Git提交记录截图
    1232108-20180410221501073-698719530.png

转载于:https://www.cnblogs.com/hbw985609191/p/8734568.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值