首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
简单队列是符合先进先出规则的数据结构,下面用不含有头结点的单向循环链表表示简单队列。 函数EnQueue(Queue*Q,KeyType new_elem)的功能是将元素new—elem加入队尾。 函数DeQueue(Queue*Q,Key
简单队列是符合先进先出规则的数据结构,下面用不含有头结点的单向循环链表表示简单队列。 函数EnQueue(Queue*Q,KeyType new_elem)的功能是将元素new—elem加入队尾。 函数DeQueue(Queue*Q,Key
admin
2018-04-19
96
问题
简单队列是符合先进先出规则的数据结构,下面用不含有头结点的单向循环链表表示简单队列。
函数EnQueue(Queue*Q,KeyType new_elem)的功能是将元素new—elem加入队尾。
函数DeQueue(Queue*Q,KeyType*elem)的功能使将非空队列的队头元素出队(从队列中删除),并通过参数带回刚出队的元素。
用单向循环链表表示的队列如图4.1所示。
队列及链表结点等相关类型定义如下:
enum{ERROR,OK);
typedef int KeyType;
typedef struct QNode{
KeyType data;
struct QNode *next;
}QNode, *LinkQueue;
typedef struct{
int Size;
LinkQueue rear;
}Queue;
【C函数】
int EnQueue(Queue*Q,KeyType new_elem)
{ //元素new elem入队列
QNode*p;
P=(QNode*)malloc(sizeof(QNode));
if(!P)
return ERROR;
P一>data=new_elem;
if(Q一>rear) {
P一>next=Q=>rear一>next;
(1)_________;
}
e1Se
P一>next=P;
(2)_________;
Q->siZe++;
return OK;
}
int DeQueue(Queue *Q,KeyType*elem)
{ //出队列
QNode*p;
if(0=Q一>size) //是空队列
return ERROR;
P=(3)_________; //令P指向队头元素结点
*elem=P一>data;
Q一>rear->next=(4)_________; //将队头元素结点从链表中去除
if((5)_________) //被删除的队头结点是队列中唯一结点
Q一>rear=NULL; //变成空队列
free(p);
Q一>size一一;
return OK;
}
选项
答案
(1)Q->rear->next=p (2)Q->rear=p (3)Q->rear->next (4)p->next或Q->rear->next->next (5)Q->rear=p或Q->size=1或其等价形式
解析
本题考查数据结构的实现、C程序运算逻辑与指针参数的应用。
队列是先入先出的线性数据结构。元素入队列时需要将其加入队尾,元素出队列时需要将其从队头删除。根据说明,队列采用单向循环链表表示且不设头结点,只设置指向队尾结点的指针。
显然,队列为空时,队尾指针也为空。因此,当队尾指针为空时需要将新结点的指针域设置为指向结点自己,否则,需要通过“Q->rear->next”获得队头元素结点的指针,并将新结点的指针域设置为该值,再将新结点链接在原队尾结点之后,因此空(1)处应填入“Q->rear->next=p”。新元素加入队列后队尾指针就要更新,因此空(2)处应填入“Q->rear=p”。
根据注释,空(3)所在语句需要获得队头元素所在结点的指针并用p表示,即空(3)应填入“Q->rear->next”。空(4)需要完成队头元素的出队列处理,也就是将队头元素的前驱结点的指针域(Q->rear->next)设置为指向队头元素的后继元素结点,表示
为“Q->rear->next=p->next"或“Q->rear->next=Q->rear->next->next”。
进行出队列操作时的特殊情况是队列中唯一的元素被删除,此时需要修正队尾指针,空(5)所在语句即完成此处理,该空应填入“Q->rear=p”或“Q->size=1”。
转载请注明原文地址:https://kaotiyun.com/show/z2jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某个字段的数据是原始数据计算的结果,该字段的宽度和小数位数对数据的精度有影响。一般来说,小数位数的确定需要考虑______。
某商场在节日期间推出以下几种可供客户选择的促销方式:①100元可以购买标价130元的商品;②满100元立减10元,再打8折;③打7折;④满100元即可参加抽奖,中奖率100%。10%为一等奖,退100元;30%为二等奖,退50元;60%为三等奖,退10元。
计算机运行一段时间后性能一般会有所下降,为此需要用优化工具对系统进行优化。系统优化的工作不包括()。
下列关于系统软件的叙述中,正确的是(7)。
下列关于Word绘图功能的叙述中,不正确的是__________。
对同一事物进行多次测量所得的结果可能不一致,这是幽测量误差所致。利用______可使误差基本抵消。
要将编辑完成的文档某一段落与其前后两个段落间设置指定的间距,常用的解决方法是(39)。
此配置允许DHCP服务器分配给客户的地址范围是什么?#/sbin/chkconfig-level3dhcpdon命令的作用是什么?
阅读以下说明,回答问题1至问题6,将解答填入答题纸对应的解答栏内。【说明】在Linux下安装配置DHCP服务,DHCP服务程序/usr/sbin/dhcpd需要读取配置文件/etc/d/hcpd.conf,以下是一个DHCP配置文件的主要内容:
从以下备选答案中为程序中(1)~(5)处空缺内容选择正确答案,填入答题纸对应的解答栏内。(1)A.CreatObject()B.connect0C.go()D.open()(2)A."select*fromdata"B."select
随机试题
如下哪项是原发性高血压病日久失治,常见受损的靶器官
项目投资资本金必须经过有资格的评估机构依照法律、法规评估作价,其出资方式可以采取()。
下列关于抵押人、抵押权人的表述中,正确的是()。[2004年考试真题]
与价格总水平的变动成正比的变量有()。
关于生产力与生产关系的说法,正确的是()。
A、 B、 C、 D、 D1,2列里前一格的黑点相加等于3列里前一格的黑点,后一格中的黑点每一行均成等差数列
刑法规定,适用“可以减轻或者免除处罚”的法定情节有()。
结合材料,回答问题:材料1党的十八大开启了全党全国各族人民为全面建成小康社会、实现中华民族伟大复兴的中国梦而团结奋斗的新征程。一个没有精神力量的民族难以自立自强,一项没有文化支撑的事业难以持续长久。面对复杂多变的国际形势和艰巨繁重的国
"Whereismeuniversity?"isaquestionmanyvisitorstoCambridgeask,butnoonecangivememaclearanswerforthereisnow
Upuntiltheageof18,Ireadverylittle.I【C1】______myselftowhatwasnecessaryforasecondary-school【C2】______Iwasalways
最新回复
(
0
)