1.学习总结
1.1. 本周学习中比较重要的知识点关键词:逻辑结构,栈,队列,存储结构。
1.2. 思维导图:
- 2. PTA实验作业
2.1. 题目1:7-1 jmu-字符串是否对称
2.2设计思路
定义栈S:
定义字符数组str;
定义变量len ,x //len为数组长度;
定义指针p //p指向str;
输入待判断的字符;
for p=0 to len/2
入栈
for p=len/2 to len //len为奇数时应从len/2+1开始
出栈
If 配对失败
return 0 //return 0时主函数会输出no;
else
return 1 //return 1时主函数会输出yes
2.3 代码截图
2.4 PTA提交列表说明
错误原因:编辑器没转换导致编译错误。
2.1.题目2:表达式转换。
2.2,设计思路:
定义变量i,j,flag,len,space//len为数组长度
定义字符变量str1,str2;
for i=0 to len
if 是数字
then if 要输出空格
输出空格;
数字出栈
else if运算前有负号
输出空格
出栈
else
then if 是‘)’号
直到栈顶‘(’的运算符出栈;
else 和栈顶元素比较
if栈顶元素优先级高
栈顶元素出栈;
else
元素入栈;
2.3 代码截图
2.4 PTA提交列表说明
错误原因: 未考虑运算数前有正负号的情况导致出现错误,后来补上了这种情况。
2.1 题目3: 银行业务队列简单模拟
2.2设计思路:
定义队列A,B
定义变量num,i,temp //num为顾客总数,i为计数变量,temp参与判断A,B窗口
输入顾客总数
for i=0 to num
if temp 为奇数
入队A
else
入队B
if 队列A不为空
输出队列A的队头
并让其出队
else
输出队列B的队头
并让其出队
if 队列A B有一个不为空
让i的值加一
if i为奇数
if 队列A不为空
输出队列A的队头
并让其出队
else
if 队列A不为空
输出队列A的队头
并让其出队
if 队列B不为空
输出队列B的队头
并让其出队
2.3代码截图
2.4 PTA提交列表说明
错误原因:提交时编译错误,一开始没看出来,最后发现未定义quene头文件以及两个队列都为空的情况,后面补上后就可以了
3.截图本周题目集的PTA最后排名
3.1 栈PTA排名
3.2 队列PTA排名
3.3 我的总分:2
4. 阅读代码
地址: https://gitee.com/justinzeng/codes/sym38zok2pc9r5a6vnite41
贴图:
代码功能:队列顺序存储
优点:代码简洁明了,条例清晰,值得学习。
5. 代码Git提交记录截图