- 10
- 0
- 约3.66千字
- 约 6页
- 2020-04-13 发布于广东
- 举报
实验题目
括号匹配的检验
[问题描述] 假设表达式中允许有两种括号:圆括号和方括号,其嵌套的顺序随意,即(()[ ])或[([ ] [ ])]等为正确格式,[( )]或((()均为不正确的格式。检验括号是否匹配的方法可用“期待的紧迫程度”这个概念来描述。例如:考虑下列的括号序列: [ ( [ ] [ ] ) ] 1 2 3 4 5 6 7 8 当计算机接受了第1个括号以后,他期待着与其匹配的第8个括号的出现,然而等来的却是第2个括号,此时第1个括号“[”只能暂时靠边,而迫切等待与第2个括号相匹配的 第7个括号“]”的出现,类似的,因只等来了第3个括号“[”,此时,其期待的紧迫程度较第2个括号更紧迫,则第2个括号只能靠边,让位于第3个括号,显然第3个括号的期待紧迫程度高于第2个括号,而第2个括号的期待紧迫程度高于第1个括号;在接受了第4个括号之后,第3个括号的期待得到了满足,消解之后,第2个括号的期待匹配就成了最急迫的任务了,…… ,依次类推。可见这个处理过程正好和栈的特点相吻合。2.需求分析
输入的形式和输入值的范围:从键盘上以字符串的形式输入括号序列。
输出的形式:括号匹配或是括号不匹配。
程序所能达到的功能:检验括号是否匹配。
测试数据:输入([ ]()),结果“匹配” 输入 [(( )],结果“此串括号匹配不合法”
概要设计
(1)typedef str
原创力文档

文档评论(0)