第五周 项目3
来源:互联网 发布:南京网络作家协会 编辑:程序博客网 时间:2024/06/05 14:42
【项目 - 括号的匹配】
假设表达式中允许三种括号:圆括号、方括号和大括号。编写一个算法,判断表达式中的各种左括号是否与右括号匹配。
假设表达式中允许三种括号:圆括号、方括号和大括号。编写一个算法,判断表达式中的各种左括号是否与右括号匹配。
例如,输入2+(3+4)*2+{[3]}-8,输出匹配正确;输入2+(3+4*[2)+{[3]}-8,输出匹配错误。
提示:
(1)遇到左括号入栈,遇到右括号后,出栈一个符号,看是否配对。若配对,继续,直到读完所有的符号,栈也正好为空。若在中间出现一个不配对的,或者____,则可以得出不配对的结论。
(2)也可以设计一个返回值为布尔型的函数,参数为要配对的表达式,为一个字符串。
两种解法均有Bug:当输入的括号的数量左边大于右边的时候,例如{ }}}}}}}}},会出现“配对正确的bug。
解法1:头文件sqstack.h请见[顺序栈算法库],使用链栈也可以 copy
阅读全文
0 0
- 第五周项目3
- 第五周项目3
- 第五周 项目3
- 第五周项目3
- 第五周项目3
- 第五周 【项目3
- 第五周【项目3
- 第五周项目3
- 第五周项目3
- 第五周 项目3
- 第五周 项目3
- 第五周 项目3
- 第五周 【项目3
- 第五周-项目3
- 第五周【项目3
- 第五周 【项目 3
- 第五周 项目3
- 第五周 项目3
- 20170703
- HPU1460: 杨八方的表面兄弟
- spring配置多个动态数据
- golang的import
- PHP代码http跳转到https
- 第五周 项目3
- 开源数据库InfluxDB常用函数
- cookie安全
- Android中使用RecyclerView + SnapHelper实现类似ViewPager效果
- three.js加载vtk模型
- 跨域
- linux折腾日记:校园网锐捷上网设置
- 70. Climbing Stairs
- 通达OA工作流程-使用方法