第03次作业-栈和队列

第03次作业-栈和队列

一、学习总结

思维导图


二、PTA实验作业

题目一:

7-3 表达式转换(25 分)

算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。

输入格式:

输入在一行中给出不含空格的中缀表达式,可包含+-*\以及左右括号(),表达式不超过20个字符。

输出格式:

在一行中输出转换后的后缀表达式,要求不同对象(运算数、运算符号)之间以空格分隔,但结尾不得有多余空格。

3.代码截图

4.PTA提交列表说明

  • 编译错误:用 c 的编译器运行 c++ 文件
    解决方法:将上传选项改为 c++

题目二:

2.设计思路:

定义结构体类型 node 代表路径选择
定义node型数组 step
定义变量 tops 代表step下标并赋初值 -1
定义数组 stack1 stack2 stack3 分别代表车厢入站顺序 车厢出站顺序 中转顺序
for 0 to len(stack1)-1
 if 轨道1出站车厢==轨道2进站车厢
   then 路线为1->2
 else if 轨道3存放车厢==轨道2进站车厢
   then 路线为 3->2
 else 轨道1出来的车厢暂存到轨道3
   then 路线为1->3
      end

3.代码截图

4.PTA提交列表说明

 


题目三:7-2 银行业务队列简单模拟(25 分)

2.设计思路:

创建队伍 A B 
定义变量 data 为顾客编号
for 0 to 总顾客人数
  if data 为偶数
    then 入B队 
  else
    入A队
      end 
while A,B队伍均有人
  A先出队两人
  if A 队第二次无人
    then 跳出循环
  B出队一人
    end
while A                
  A队顾客按顺序出队
   end
while B
  B队顾客按顺序出队
    end

3.代码截图



4.PTA提交列表说明

 

三、截图本周题目集的PTA最后排名

1.栈PTA排名

2.队列PTA排名

3.我的总分:2.5分必做题全部做完,选做题做部分

四、阅读代码

题目:表达式后缀转换
优点:

  1. 利用两个栈,一个存放运算符,一个存放中间结果,最后弹出第二个栈的逆序,减小出错概率
  2. 此代码条理清晰让人易懂

代码相关地址:https://blog.csdn.net/King_Like_Coding/article/details/51798709

五、代码Git提交记录截图

posted @ 2018-04-07 19:53  lk2291539780  阅读(283)  评论(1编辑  收藏  举报