第03次作业-栈和队列

1.学习总结

2.PTA实验作业

 

2.1 题目一:7-1 jmu-字符串是否对称

2.2 设计思路(伪代码或流程图)

伪代码:

7-1
定义变量s[]为待比较数组,str[]作为存待比较的数组
主功能函数:
for i=0 to '\0'
进栈s to str;
end for
for j=0 to '\0'
if(出栈S比较str[j])
flag = false;
退出循环
end if
end for
if flag
输出 yes
else 输出 no

2.3 代码截图

 

 

2.4 PTA提交列表说明

首次提交忘记把中间的测试输出删除,导致答案错误。

2.1 题目二:7-2 符号配对

2.2 设计思路(伪代码或流程图)

7-2
定义变量s为待验字符串,ans存入待验字符串
while 输入s&&s[0]不等于'.'
L=s长度
for i=0 to l
if s[i]等于'(' ')' '{' '}' '[' ']'
ans[]存入s
end if
if s[i]等于'/' s[i+1]='*'
ans[]存入'a'
end if
if s[i]等于'*' s[i+1]='/'
ans[]存入'b'
end if
end for

for i=0 to ans长度
if ans[i]='(' '[' '{'
sta[]入栈
end if
if sta为空
输出 no
输出 ans第一个字符
break
end if
if ans 和sta ASCII码没有差1或2
输出 no
输出第一个字符
flag=0
break
end if
end for
if flag
if ans没有剩余
输出 yes
end if
else
输出 no
输出第一个字符

2.3 代码截图

2.4 PTA提交列表说明

没有考虑到左右括号都配对的,但左边有剩余的情况

2.1 题目二:7-2 银行业务队列简单模拟

2.2 设计思路(伪代码或流程图)

7-2
while i,j=0 to n
for i to n
if a[i]为奇数
输出 a[i]
i++
break
end if
end for


for j to n
if a[j]为偶数
输出 a[j]
break;
end if
end for

2.3 代码截图

2.4 PTA提交列表说明

头文件忘了复制过去了

 

3.截图本周题目集的PTA最后排名

栈:

 

队列:

3.3我的总分:145 - 2

4. 阅读代码

https://blog.csdn.net/caicai_zju/article/details/49227927

删除元素 
可以从双端队列的手部,尾部,中部删除元素,并可以清空双端队列容器

5. 代码Git提交记录截图

 

 

 

posted @ 2018-04-07 20:16  1713张荣波  阅读(171)  评论(0编辑  收藏  举报