当前位置:网站首页 > 技术博客 > 正文

数据结构中括号匹配的算法



在编程当中我们只会用到三种括号:圆括号(),方括号[]和花括号{},编译器在编译的时候会检查括号是否正确匹配。例如{[()]}、{()[]{}}都是合法的匹配。但是([)]则是不合法的匹配。请编写一个程序来判断输入的括号序列是否合法。
输入
测试数据由多组,每组数据有一行,为( ) [ ] { }组成的序列,长度不超过1000
输出
对于每组数据输出一行,如果是合法匹配则输出YES,不合法则输出NO,请注意大小写
样例输入
 
样例输出
 
本题也是解法众多,但是万变不离其中,无论如何我们要用到的都是栈的相关知识,在你不懂如何使用栈,修改栈中元素时,不管C语言还是C++都可以直接使用数组在作为基底,对出栈和进栈等等操作(push(),pop(),empty()…)分别写一个函数,在主函数中调用使用即可,此处我们直接使用栈来实现,来复习练习栈的使用。
 

1.本题首先要知道哪些条件才可以判断合法的匹配
2.然后理好思绪每一步要实现的内容
3.正确使用栈
4.操作过程中倘若有误,一定要多测试,实践出真知,有时可以用cerr代替cout来输出表示测试的数据。

版权声明


相关文章:

  • js常用数据类型2024-11-26 08:01:04
  • python pywin322024-11-26 08:01:04
  • clash怎么开全局代理安卓2024-11-26 08:01:04
  • idea maven 本地仓库2024-11-26 08:01:04
  • verilog条件编译范例2024-11-26 08:01:04
  • js中怎么取数组里面的数据2024-11-26 08:01:04
  • 字典树 leetcode2024-11-26 08:01:04
  • 给软件分组名称大全2024-11-26 08:01:04
  • 进程和线程的区别和作用2024-11-26 08:01:04
  • sscom v5.13.1串口调试使用视频2024-11-26 08:01:04