首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O1)(不计new和dispose时间)。
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O1)(不计new和dispose时间)。
admin
2016-03-29
53
问题
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是O1)(不计new和dispose时间)。
选项
答案
本题要求用链接结构实现一个队列,可用链表结构来实现。一般说,由于队列的先进先出性质,所以队列常设队头指针和队尾指针。但题目中仅给出一个“全局指针p”,且要求入队和出队操作的时间复杂性是O(1),因此用只设尾指针的循环链表来实现队列。 (1)proc addq(var p:linkedlistl x:elemtp); //p是数据域为data、链域为link的用循环链表表示的队列的尾指针 new(s); //申请新结点。假设有内存空间,否则系统给出出错信息 s ↑.data:=x;s ↑.1ink:=p ↑.link; //将s结点入队 p ↑.link:=s;p:=s; //尾指针p移至新的队尾 endp; (2)proc deleq(val p:linkedlist,var x:elemtp); //p是数据域为data、链域为link的用循环链表表示的队列的尾指针,本算法实 //现队列元素的出队,若出队成功,返回出队元素,否则给出失败信息 if(p ↑.1ink==p)then{writeln(”空队列”);return(0);} //带头结点的循环队列 else{s:=p ↑.link t.link; //找到队头元素 p ↑.link ↑.1ink:=s ↑.link; //删队头元素 x:=s ↑.data,; //返回出队元素 if(p:=s)then p:=p ↑.1ink; //队列中只有一个结点,出队后成为空队列 dispose(s); //回收出队元素所占存储空间 } endp;
解析
转载请注明原文地址:https://kaotiyun.com/show/VnRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1628年出版了《心血运动论》一书,论证了血液在全身的循环运动,使生理学发展为科学的是()。
前期罗马帝国时期,关于罗马东方行省的传统手工业产品的叙述,不正确的是()。
建立中国道教史上第一个成熟的神仙系统的是()。
中国共产党第三次全国代表大会的最大缺陷是()。
光绪皇帝颁布“明定国是”诏书的时间是()。
以北宋三大发明为例简述北宋科学技术的特征。
毛泽东认为,社会主义这个阶段可分为两个阶段,包括()。
西汉末年,()对太初历作了系统的解释,并调整为三统历。这是中国第一部记载完整的历法。
洪秀全以宗教手段组织起义,主要利用的是()。
设磁盘的扇区大小为4KB,磁盘转速为15000r/min,磁盘平均寻道时间为4ms,最大数据传输速率为40MB/s,磁盘控制器开销时问为1ms,计算读写一个扇区所需平均时间(不考虑I/O请求队列中的等待时间)。
随机试题
下列行为中,涉嫌违反我国《反垄断法》的有()。
"Outthroughthatwindow,exactlythreeyearsago,【C1】______.Theynevercameback.Incrossingthecountrytotheshooting-gr
发现早期直肠癌最有效的方法是
A.以健康人或患者作为受试对象B.实验时使用对照和双盲法C.不选择弱势人群作为受试者D.实验中受试者得到专家的允许后可自由决定是否退出E.弱势人群若参加实验,需要监护人的签字
A.石菖蒲B.蟾酥C.麝香D.安息香E.牛黄除开窍外,又能化痰的是()。
某县公安局在对李某涉嫌诬告陷害罪一案进行侦查过程中,决定对李某的住所进行搜查。县公安局在搜查过程中扣押的下列物品,符合刑事诉讼法规定的是()
下列说法中,错误的是()。
计算现金流量时,以()为基础,根据()期初期末的变动数进行调整。
下列关于信息与数据关系的表述,正确的有()。
利用税法漏洞进行避税筹划应注意的问题有()。
最新回复
(
0
)