首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O(1)(不计new和dispose时间)。
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O(1)(不计new和dispose时间)。
admin
2017-11-14
37
问题
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O(1)(不计new和dispose时间)。
选项
答案
本题要求用链接结构实现一个队列,可用链表结构来实现。一般说,由于队列的先进先出性质,所以队列常设队头指针和队尾指针。但题目中仅给出一个“全局指针p”,且要求入队和出队操作的时间复杂性是O(1),因此用只设尾指针的循环链表来实现队列。 (1)proc addq(var p:l。inkedlist,x:elemtp); //p是数据域为data、链域为link的用循环链表表示的队列的尾指针 new(s); //申请新结点。假设有内存空间,否则系统给出出错信息 s ↑.data:=x;s ↑.1ink:=p ↑.link; //将s结点入队 p ↑.1ink:=s;p:=s; //尾指针p移至新的队尾 endp; (2)proc deleq(Var p:linkedlist,Var x:elemtp); //p是数据域为data、链域为link的用循环链表表示的队列的尾指针,本算法实 //现队列元素的出队,若出队成功,返回出队元素,否则给出失败信息 if(p ↑.link==p)then{writeln(”空队列”):return(0);} //带头结点的循环队列 、 else{s:=p ↑.link ↑.link; //找到队头元素 p ↑.link ↑.link:=s ↑.link; //删队头元素 x:=s ↑.data; //返回出队元素 if(p==s)then p:=p ↑.link; //队列中只有一个结点,出队后成为空队列 dispose(s); //回收出队元素所占存储空间 } endp; 提示:上述入队算法中,因链表结构,一般不必考虑空间溢出问题,算法简单。在出队算法中,首先要判断队列是否为空,另外,对出队元素,要判断是否因出队而成为空队。否则,可能导致因删除出队结点而将尾指针删掉成为“悬挂变量”。
解析
转载请注明原文地址:https://kaotiyun.com/show/YxRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
民族资本主义的发展为其后到来的变法维新和民主革命做的准备有()①充足的物质条件②思想基础③阶级力量④指导方针
1951年参加西藏和平谈判的双方代表团首席代表是()。
在晚清地方势力崛起的过程中,属于淮系的有()
美国工业革命的有利条件包括()。①美国自然资源丰富②独立战争后,美国创立了资产阶级共和制度③地理位置优越,远离动乱的欧洲④拥有潜在的广阔的国内市场
论述古希腊文明在哲学和史学方面的主要成就。
在清末新政中,清政府于()年决定,从第二年起停止一切科举,结束了延续千年的科举制。
古埃及第24朝法老波克利斯进行改革,宣布废除奴隶制,债权人只能索取债务人的财产作抵偿,而不能占有债务人的人身,因为财产属于个人,而公民人身属于国家,国家需要他们服役。该改革旨在
编写判定给定的二叉树是否是二叉排序树的函数。
快速排序算法中,如何选取一个界值(又称为轴元素),影响着快速排序的效率,而且界值也并不一定是被排序序列中的一个元素。例如,我们可以用被排序序列中所有元素的平均值作为界值。编写算法实现以平均值为界值的快速排序方法。
对输入输出系统产生决定性影响的基本要求是()。I.异步性Ⅱ.同步性Ⅲ.分时性Ⅳ.实时性V.设备相关性Ⅵ.没备无关性
随机试题
下列各项,属于其他收入的有()
Imagineyouarealeft-hander.Suddenlyeverythingintheworldischanged.Thedoorlocksareonthewrongsideofdoors.Thes
特发性巨细胞性心肌炎
牙尖偏远中的牙是颊尖偏远中的牙是
下列各项中,能作为呆账核销的是()。
一、注意事项1.申论考试是对应考者阅读能力、综合分析能力、提出和解决问题能力、文字表达能力的测试。2.参考时限:阅读40分钟,作答110分钟。3.仔细阅读给定资料,按照后面提出的“作答要求”作答。二、给定资料
人口生产的周期
设向量组α1=(1,1,1,2)T,α2=(3,a+4,2a+5,a+7)T,α3=(4,6,8,10)T,α4=(2,3,2a+3,5)T;β=(0,1,3,6)T,求:a,b满足何种条件时,β不能由α1,α2,α3,α4线性表示;
活动排序的工具和技术有多种,工具和技术的选取由若干因素决定。如果项目经理决定在进度计划编制中使用子网络模板,这个决策意味着()。
Lookatthenotebelow.Youwillhearawomanenquiringaboutapopularmodelofmicrowaveoven.
最新回复
(
0
)