首页
登录
从业资格
阅读以下说明和C函数,填补函数中的空缺,将解答填入答题纸的对应栏内。 简单队列
阅读以下说明和C函数,填补函数中的空缺,将解答填入答题纸的对应栏内。 简单队列
考试题库
2022-08-02
34
问题
阅读以下说明和C函数,填补函数中的空缺,将解答填入答题纸的对应栏内。简单队列是符合先进先出规则的数据结构,下面用不含有头结点的单向循环链表表示简单队列。函数enqueue(queue*q,KeyType new_elem)的功能是将元素new_elem加入队尾。函数dequeue(queue*q,KeyType*elem)的功能使将非空队列的队头元素出队(从队列中删除),并通过参数带回刚出队的元素。用单向循环链表表示的队列如下图所示。
队列及链表结点等相关类型定义如下:
选项
答案
解析
(1)q->rear->next=p
(2)q->rear=p
(3)q->rear→next
(4)p->next
(5)q->rear==p或p->next==p或q->size==1
解析:本题考察C语言指针与链表的知识,为入队列和删除队列问题。
(1)对于入队列,当队列q不为空时,p的队尾元素要指向原q的队尾指向的元素,而原q队尾指向的元素应指向p,故(1)处应填q->rear->next=p。
(2)当队列q为空时,插入p元素,则p的队尾指向p自身,即:p->next=p,且整个队列q的队尾也是p,故(2)处应填q->rear=p。
(3)对于队列删除元素p,先判断q是否为空,为空队列则返回错误;否则,应当令p指向队头元素结点,队头元素结点可用q->rear->next表示,因此(3)填q->rear->next。
(4)此时,p转化为头结点,p出列,则需要q的队尾指向p的下一个元素,因此(4)中应填p->next。
(5)最后,判断被删除的队头结点是否是队列中的唯一结点,可采用:q->rear==p或p->next==p或q->size==1等表示方法,故(5)中应填q->rear==p或p->next==p或q->size==1。
转载请注明原文地址:https://tihaiku.com/congyezige/2426417.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
解答服务对象的健康问题,帮助其澄清观念、做出决策的人际传播形式称为A.咨询B.个
函数f和g的定义如下图所示。执行函数f时需要调用函数g(a),若采用值调用方式(
若程序中定义了局部变量与全局变量,则()。A.在函数内只能访问局部变量,而不能访
阅读一下说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】
阅读一下说明,回答问题1至问题4.将解答填入答题纸对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题4,将解答填入对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题4,将答案填入答题纸对应的解答栏内。(注:此题为思
阅读下列说明信息,回答问题1至问题5。将答案填入答题纸对应的解答栏内。 【说明
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某
随机试题
Decidewhichofthechoicesgivenbelowwouldbestcompletethepassageifi
Ifyouworkfrom9:00a.m.to4:30p.m.everyday.Whichschoolwillyouchoose?
Forthispart,youareallowed30minutestowriteanessaybasedonthepic
共用题干 患者男性,53岁。给苹果园喷洒农药后出现头晕、多汗、恶心、呕吐、腹痛
技术要素设计的活动()是解决问题的技术A.识别监控对象,制定设备监控指标及阈值
学生在成语探究活动中,梳理成语的来源,下列归类完全正确的是()。A.源于神话传说
假设某基金某日持有的某种股票的数量分别为400万股,每股的收盘价为10元,银行存
一项考试共有35道试题,答对一题得2分,答错一题扣1分,不答则不得分。一名考生一
在我国引起门静脉高压症的主要原因是A.血吸虫病性肝硬化 B.肝炎后肝硬化 C
出卖人就同一普通动产订立多重买卖合同,在买卖合同均有效的情况下,买受人均要求实际
最新回复
(
0
)