知识大全 数据结构考研分类复习真题 第三章 答案[12]
Posted 元素
篇首语:沉舟侧畔千帆进,病树前头万木春。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第三章 答案[12]相关的知识,希望对你有一定的参考价值。
见上题 的解答
参见上面 题
typedef struct node elemtype elemcq[m]; //m为队列最大可能的容量 int front rear; //front和rear分别为队头和队尾指针 cqnode; cqnode cq; 初始状态 cq front=cq rear= ; 队列空 cq front==cq rear; 队列满 (cq rear+ )%m==cq front;
栈的特点是后进先出 队列的特点是先进先出 初始时设栈s 和栈s 均为空
( )用栈s 和s 模拟一个队列的输入 设s 和s 容量相等 分以下三种情况讨论 若s 未满 则元素入s 栈 若s 满 s 空 则将s 全部元素退栈 再压栈入s 之后元素入s 栈 若s 满 s 不空(已有出队列元素) 则不能入队
( )用栈s 和s 模拟队列出队(删除) 若栈s 不空 退栈 即是队列的出队 若s 为空且s 不空 则将s 栈中全部元素退栈 并依次压入s 中 s 栈顶元素退栈 这就是相当于队列的出队 若栈s 为空并且s 也为空 队列空 不能出队
( )判队空 若栈s 为空并且s 也为空 才是队列空
讨论 s 和s 容量之和是队列的最大容量 其操作是 s 栈满后 全部退栈并压栈入s (设s 和s 容量相等) 再入栈s 直至s 满 这相当队列元素 入队 完毕 出队时 s 退栈完毕后 s 栈中元素依次退栈到s s 退栈完毕 相当于队列中全部元素出队
在栈s 不空情况下 若要求入队操作 只要s 不满 就可压入s 中 若s 满和s 不空状态下要求队列的入队时 按出错处理
( )队空s front=s rear //设s是sequeuetp类型变量
( )队满 (s rear+ )MOD MAXSIZE=s front //数组下标为 MAXSIZE
具体参见本章应用题第 题
cha138/Article/program/sjjg/201311/22711相关参考
知识大全 数据结构考研分类复习真题 第三章 栈和队列[12]
.在作进栈运算时应先判别栈是否_()_;在作退栈运算时应先判别栈是否_()_当栈中元素为n个作进栈运算时发生上溢则说明该栈的最大容量为_()_为了增加内存空间的利用率和减少溢出的可能性由两个栈共享
typedefstruct elemtpq[m]; intfrontcount; //front是队首指针count是队列中元素个数 cqnode; &nbs
[题目分析]本题与上面题基本相同现用类C语言给出该双端队列的定义 #definemaxsize typedefstruct datatypeelem[maxsize]; int
#definemaxsize栈空间容量 voidInOutS(ints[maxsize]) //s是元素为整数的栈本算法进行入栈和退栈操作 inttop=;  
s=(LinkedList)malloc(sizeof(LNode))s>data=x;s>next=r>nextr>next=sr=s 牺牲一个存储单元 &n
既不能由输入受限的双端队列得到也不能由输出受限的双端队列得到的输出序列是dbca () () &nbs
本题与上题本质上相同现用类C语言编写入队和出队算法 ()voidEnQueue(LinkedListrearElemTypex) //rear是带头结点的循环链队列的尾指针本算法将元素x插入到
intMaxValue(inta[]intn)//设整数序列存于数组a中共有n个本算法求解其最大值 if(n==)max=a[]; elseifa[n]>MaxValue(an)max=
[题目分析]这是以读入数据的顺序为相反顺序进行累乘问题可将读入数据放入栈中到输入结束将栈中数据退出进行累乘累乘的初值为 PROC test; CONSTmaxsize=; VARs
n+ top[]+=top[] 两栈顶指针值相减的绝对值为(或两栈顶指针相邻) ()满 ()空 ()n ()栈底 ()两栈顶指针相