提问,高手进来回答!
创始人
2025-07-14 06:35:37
提问,高手进来回答!
楼上把C实现的代码都直接给出来了。
楼主没太说清楚括号间是否也要求匹配?即大括号应在中括号之外,中括号应在小括号之外?
设计一个算法思想如下:
开始
读入字符串
对每一个读入的字符:(While或者For循环)
判断是否是{或}
是 不是
大括号标志位+1或-1 next
递归调用此程序,判断是否为[或]
是 不是
中括号标志位+1或-1 next
递归调用此程序,判断是否为(或)
是 不是
小括号标志位+1或-1 next
循环结束
检查标志位,输出信息。

应该写成递归调用,即高级括号内的低级括号不匹配即要报错。
即能够检测出这种情况:
{[(1+1)+1(]+[)1+(1+1)]}
只要第一个中括号里的小括号不匹配就要跳出递归。
实现上可以定义int main,并在判断本层括号前检查低一层返回的值,如不匹配即给出提示。

相关内容

热门资讯

李彦宏《人民日报》撰文,提出内... 11月20日,百度创始人、董事长兼首席执行官李彦宏在《人民日报》发表题为《内化AI能力,加快形成新质...
兰州石化:AI开启班组建设新模... 11月18日,兰州石化消防支队工会干事张震依托支队工会数字化平台,对近年来的“五型”班组建设情况进行...
蚂蚁开源万亿参数强化学习高性能... 每经AI快讯,11月20日,蚂蚁集团宣布开源万亿参数强化学习高性能权重交换框架Awex。
双11家电市场洞察:AI全面渗... 今年战线持续拉长的“双11”大促已落下帷幕。星图数据显示,本次双11大促全网电商销售总额达16950...