首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
试写出一个判别表达式中开、闭括号是否配对出现的算法。
试写出一个判别表达式中开、闭括号是否配对出现的算法。
admin
2014-12-25
60
问题
试写出一个判别表达式中开、闭括号是否配对出现的算法。
选项
答案
Status Express(char*str) { /*假设表达式放入一个字符串str中,利用栈判断表达式中的括号是否匹配*/ InitStack(S); while(*str!=’\0’) {if(*str==’(’)Push(S,*str); if(*str=’)’&&(StackEmpty(s)l IPop(s,temp)!=’(’)) return FALSE; str++: } if(StackEmpty(S))return OK; else return FALSE; }
解析
由于表达式中只含一种括号,因此只有两种错误情况,即:在没有左括号的情况下(左括号数少于右括号数),出现右括号或者整个表达式中的左括号数多于右括号数。现在可以设一个堆栈,来检验括号是否匹配。
转载请注明原文地址:https://kaotiyun.com/show/tYVx777K
本试题收录于:
数据结构导论题库理工类分类
0
数据结构导论
理工类
相关试题推荐
在系统的输出表达式中,与初始条件有关的部分称为系统的补函数,与________有关的部分称为系统的特解函数。
MD5算法的运算过程分为哪几个步骤?
MD5算法可以对任意长的报文进行运算,得出固定长度为【】位的报文摘要。
设有关系R(书号,书名),如果要检索书名中至少包含4个字母,且第3个字母为M的图书,则SQL查询语句中WHERE子句的条件表达式应写成()
已知有如下三个关系:学生(学号,姓名,系号)项目(项目号,项目名称,报酬)参加(学号,项目号,工时)其中:系号指学生所在系的编号;报酬指参加该项目每个工时所得的报酬。基于以上关系回答小题。试用关系代数表达式写出下列查询
分析以下SQL语句:SELECT姓名FROM读者WHERE读者号IN(SELECT读者号FROM借阅WHERE图书号=’001’);请写出相应的关系代数表达式。
随机试题
原发性高血压水肿可能的原因是()
根据《工伤保险条例》的规定,职工因工致残被鉴定为一级至四级伤残的,享受以下待遇:()。
(2005年)过点M(3,-2,1)且与直线平行的直线方程是()。
企业产品的竞争力主要取决于()。
关于中标项目分包的规定,是否分包是由________决定。
下列作品与第二次世界大战有关的是()。
Mostyoungpeopleenjoysomeformofphysicalactivity.Itmaybewalking,cyclingorswimming,inwinter,orskatingorskiing.
Withthethreeships______tohimbytheQueenofSpain,Columbussailedwest.
Inthevideo,themayordidallthefollowingEXCEPT
TheSeattleTimesCompanyisonenewspaperfirmthathasrecognizedtheneedforchangeanddonesomethingaboutit.Inthenews
最新回复
(
0
)