首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假设以I和O分别表示入栈和出栈操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。 (1)下面所示的序列中哪些是合法的? A.IOIIOIOO B.IOOIOII
假设以I和O分别表示入栈和出栈操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。 (1)下面所示的序列中哪些是合法的? A.IOIIOIOO B.IOOIOII
admin
2019-08-01
34
问题
假设以I和O分别表示入栈和出栈操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。
(1)下面所示的序列中哪些是合法的?
A.IOIIOIOO B.IOOIOIIO C.IIIOIOIO D.IIIOOIOO
(2)通过对(1)的分析,写出一个算法,判定所给的操作序列是否合法。若合法,返回true,否则返回false(假定被判定的操作序列已存入一维数组中)。
选项
答案
(1)A和D是合法序列,B和C是非法序列。 (2)设被判定的操作序列已存入一维数组A中。 int Judge(char A[]){ //判断字符数组A中的输入/输出序列是否是合法序列。如是,返回true, //否则返回false int i=0; //i为下标 int j=k=0; //j和k分别为I和字母0的个数 while(A[i]!=’\0’){ switch(A[i]){ case’I’:j++;break;//入栈次数增1 case’0’;k++;if(k>j){printf(”序列非法\n”);exit(0);} } i++i //不论A[i]是’I’或’0’,指针i均后移} if(j!=k){printf(”序列非法\n”);return(false);} else{printf(”序列合法\n”);return(true):} } } 提示:在入栈出栈序列(即由’I’和’0’组成的字符串)的任一位置,入栈次数(’I’的个数)都必须大于等于出栈次数(即’0’的个数),否则视作非法序列,立即给出信息,退出算法。整个序列(即读到字符数组中字符串的结束标记‘\0’),入栈次数必须等于出栈次数(题目中要求栈的初态和终态都为空),否则视为非法序列。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/yNCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
新中国成立初期,旨在完成民主革命遗留任务的运动是()。
佛教向亚洲国家传播始于印度的哪个时代?()
经六朝时期的发展,南方形成了三个农业发达地区即()。
三国时期,魏、蜀、吴三国灭亡的历史顺序是()。
()是清代管理边疆少数民族地区事务的机关,也掌管一部分外交事务。
汉章帝会群儒于白虎观,讨论经义,由()写成《白虎通德论》(又称《白虎通义》、《白虎通》)一书,这部书系统地吸收了阴阳五行和谶纬之学,形成今文经学派的主要观点。
隋唐五代时期是中国古代商品经济发展史上的一个重要阶段,种类多,交换规模大,交换方式多。试回答问题:随着商业的发展,唐朝在货币和金融方面有一些重要的进步,以下表述全面的是()
在请求页式系统中,一程序的页面走向(访问串或引用串)为2,3,4,5,2,3,6,2,3,4,5,6,设分配给该程序的存储块数为m。试分别计算m=3和m=4时,FIFO和LRU两种替换算法的缺页(页故障)数,并给出:结果说明了什么?
在集中式总线仲裁中,()方式响应时间最快。
“乘法减少”和“加法增大”备用在什么情况下?
随机试题
下列哪项因素不能使胆汁酸合成加速
伪造货币罪侵犯的客体是()。
管理职能包括:计划、组织、领导、控制,其中()是管理者的首位职能。
【2013年福建.单选】按照设计图想象自己未来家的样子,这属于()。
甲、乙签订了一份借款合同,甲为借款人,乙为出借人,借款数额为500万,借款期限为两年。丙、丁为该借款合同进行保证担保,担保条款约定,如果不能如期还款,丙、丁承担保证责任。戊对甲、乙的借款合同进行了抵押担保,担保物为一批设备(价值300万),未约
年金
在甲、乙离婚案件的审理过程中,甲以怀疑乙有婚外情为由,请求法院向移动通信公司调取乙的通话记录清单作为证据。根据现行宪法,下列说法正确的是
占有的客体不包括()
下列叙述中正确的是______。
虽然这套房子很大,但是它的厨房太旧,而且也没有窗户。我得再找一套。
最新回复
(
0
)