首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设计一个算法,判断一个算术表达式中的括号是否配对。算术表达式保存在带头结点的单循环链表中,每个结点有两个域:ch和link,其中ch域为字符类型。
设计一个算法,判断一个算术表达式中的括号是否配对。算术表达式保存在带头结点的单循环链表中,每个结点有两个域:ch和link,其中ch域为字符类型。
admin
2019-08-15
48
问题
设计一个算法,判断一个算术表达式中的括号是否配对。算术表达式保存在带头结点的单循环链表中,每个结点有两个域:ch和link,其中ch域为字符类型。
选项
答案
表达式中的括号有以下三对:'('、')'、'['、']'、'{'、'}',使用栈,当为左括号时入栈,右括号时,若栈顶是其对应的左括号,则退栈,若不是其对应的左括号,则结论为括号不配对。当表达式结束,若栈为空,则结论表达式括号配对;否则,结论表达式括号不配对。 int Match(LinkedList la){ //算术表达式存储在以la为头结点的单循环链表中,本算法判断括号是否正确配对 char s[]; //s为字符栈,容量足够大 p=la一>link: //p为工作指针,指向待处理结点 Stack Init(s): //初始化栈s while(p!=la){ //循环到头结点为止 switch(p一>ch){ case'(':push(s,p一>ch);break; case')':if(StackEmpty(s)lI StackGetTop(s)!='('){ printf("括号不配对\n");return(0); } else pop(S); break; case'[':push(s,p->ch);break; case'[':if(StackEmpty(s)∣∣ StackGetTop(s)}='['){ printf("括号不配对\n");return(0); } else pop(S); break; case'{':push(s,p->ch);break; case'}':if(StackEmpty(s)∣∣StackGetTop(s)!∣='{'){ printf("括号不配对\n");return(0); } else pop(S); break; }P=p一>link;//后移指针 }//while if(StackEmpty(s)){printf("括号配对\n");return(1); } else{printf("括号不配对\n");return(0); } } 提示:算法中对非括号的字符未加讨论。遇到右括号时,若栈空或栈顶元素不是其对应的左圆(方、花)括号,则结论括号不配对,退出运行。最后,若栈不空,结论仍是括号不配对。
解析
转载请注明原文地址:https://jikaoti.com/ti/LYGjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
二里头文化是我国考古史上的重大发现,具有重大的意义。根据所学知识,回答问题:二里头文化在类型上可以分为()
(1)以太网采用了曼彻斯特编码,一个比特的数据需要两个信号来传输,那么为了达到100Mbps的数据传送速率,需要线路达到200Mbps的带宽。(2)以太网的最小帧长度是64字节,那么发送一个最小帧需要的时间T1=64×8/(100×106),
在请求页式系统中,一程序的页面走向(访问串或引用串)为2,3,4,5,2,3,6,2,3,4,5,6,设分配给该程序的存储块数为m。试分别计算m=3和m=4时,FIFO和LRU两种替换算法的缺页(页故障)数,并给出:结果说明了什么?
在一个8级中断的系统中,硬件中断响应从高到低的优先顺序是1→2→3→4→5→6→7→8,通过中断屏蔽技术,将中断处理优先顺序设置为1→3→5→7→2→4→6→8,如果CPU在执行一个应用程序时有5、6、7、8级的四个中断同时到达,CPU在按优先顺序处理到第
在集中式总线仲裁中,()方式响应时间最快。
以数组Data[m+1]作为循环队列SQ的存储空间,front为头指针,rear为队尾指针,则执行出队操作的语句是()。
某计算机的Cache共有16块,采用2路组相联映射方式(即每组2块)。每个主存块大小为32字节,按字节编址。主存129号单元所在主存块应装入到的Cache组号是()。
设有一个双向链表h,每个结点中除有prior,data和next三个域外,还有一个访问频度域freq,在链表被起用之前,每个结点中的freq域都被初始化为零。每当进行LocateNode(h,x)运算时,令元素值为x的结点中freq域中的值加一,并调整表中
出现下列的情况可能导致死锁的是()。
设计一个判别表达式中左右括号是否配对出现的算法,采用()数据结构最佳。
随机试题
Sincetheearly1930s,Swissbankshadpridedthemselvesontheirsystemofbankingsecrecyandnumberedaccounts.Overtheyear
服用驱虫剂后的导泻一般采用
爱之初,要让我们所爱的人做他们自己,而不要把他们变成我们心目中的形象。否则,我们所爱的仅仅是我们在他们身上的影子。最快乐的人不必事事尽善尽美,他们只会让大部分事情顺其自然。当你呱呱落地时,你大声地哭泣,周围的每个人都朝你微笑。而当你走完人生时,你
《执业医师法》规定,医师在执业活动中应履行的义务之一是
因K与甲商量购买毒品吸,甲萌生抢劫K财物的念头,并与乙等人进行了谋划。某日,甲将K诱至甲住处谎称等候卖毒品的人,事先与甲串通好的乙等人闯入房内,装模作样地赶走甲,并对K进行殴打,当场劫得K手机及银行存折等物。乙等人逼迫K说出存折密码,但因当天银行放假而未取
工程保险的主要险别有()。
在国外,建筑工程一切险的投保人一般是()。
某施工机械的固定资产原值为500万元,该类设备的折旧年限为8年,规定的总工作台班数为20000台班,预计净残值率为4%。根据以上资料,回答下列问题:若用工作量法计提折旧,则每台班折旧额为()元。
(1)请编写名称为change_c的程序并执行。该程序实现下面的功能:将雇员工资表salarys进行备份,备份文件名为baksals.dbf。利用“人事部”向“财务部”提供的雇员工资调整表c_salary1的“工资”,对salarys表的“工资”进行调
In1784,fiveyearsbeforehebecamepresidentoftheUnitedStates,GeorgeWashington,52,wasnearlytoothless.Sohehireda
最新回复
(
0
)