首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假设以I和O分别表示入栈和出栈操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。 (1)下面所示的序列中哪些是合法的? A.IOIIOIOO B.IOOIO
假设以I和O分别表示入栈和出栈操作。栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。 (1)下面所示的序列中哪些是合法的? A.IOIIOIOO B.IOOIO
admin
2019-08-01
53
问题
假设以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(charA[]){ //判断字符数组A中的输入/输出序列是否是合法序列。如是,返回true, //否则返回false int i=0: //i为下标 int j=k=O; //j和k分别为I和字母O的个数 while(A[i]!=‘\0’){ switch(A[i]){ case‘I’:j++;break;//入栈次数增1 case‘O’;k++;if(k>j){printf(“序列非法\n”);exit(0);} } i++; //不论A[i]是‘I’或‘O’,指针i均后移} if(j!=k){prjntf(“序列非法\n”);return(false);} else{printf(“序列合法\n”);return(true);} } } 提示:在入栈出栈序列(即由‘I’和‘O’组成的字符串)的任一位置,入栈次数(‘I’的个数)都必须大于等于出栈次数(即‘O’的个数),否则视作非法序列,立即给出信息,退出算法。整个序列(即读到字符数组中字符串的结束标记‘\O’),入栈次数必须等于出栈次数(题目中要求栈的初态和终态都为空),否则视为非法序列。
解析
转载请注明原文地址:https://kaotiyun.com/show/B8Ci777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
关税自主运动
北宋在统一南方割据势力的过程中特设(),把征南所得的财富统一存放,以作日后恢复幽燕之费。
下列描述中,属于冯.诺依曼体系结构的特点是()。①采用流水线技术;②指令和数据均以二进制表示;③存储程序并且存储时不区别数据和指令。
若二叉树的前序序列为DABCEFG,中序序列为BACDFGE,则其层次序列为()。
在一个双链表中,在*p结点之前插入*q结点的操作是()。
拿内存加上外存容量之和与虚拟存储空间相比,其大小关系是()。
相对于微程序控制器,硬布线控制器的特点是()。
CRC校验是目前常用的检错方式。如果采用的多项式为G(X)=X4+X+1,那么对于要传的信息串1101011011的CRC校验码是()。
若无向图G=(V,E)中含有7个顶点,要保证图G在任何情况下都是连通的,则需要的边数最少是____。
DNS作为一种分布式系统,所基于的模式是()。
随机试题
一患儿因感冒而汗出恶风、咽痒咳嗽,次日晨起即现面目一身悉肿及小便少、舌淡红、苔薄白、脉浮缓等症。此发病与下列哪项关系最密切
新生儿溶血症可能发生于
在记账无误的情况下,银行存款日记账余额与银行对账单不一致的原因是()。
托管银行应当为每一个集合资产管理计划代理开立专门的资金账户,其账户名称为( )。
刑事强制措施的种类除了刑事拘留,还有()。
注重扩大收入来源国的税收管辖权,主要在于促进发达国家和发展中国家之间双边税收协定的签订,同时也促进发展中国家相互间国际税收协定的签订,该税收协定范本是()。
罚款、没收违法所得或者没收非法财物拍卖所得的款项,应()。
下列各项中构成不当得利的是( )。
操作系统的安全审计是指对系统中有关安全的活动进行记录、检查和审核的过程。现有的审计系统包括__________________三大功能模块。
设基址寄存器的内容为1000,当执行指令"LDAD,A,2000"时,操作数的地址是( )
最新回复
(
0
)