数据l构W二章算法设计题 [11]_跨考网
1. 已知非空U性链表由list指出Q链l点的构造ؓ(f)Q?/span>data,linkQ?/span>.请写一法Q将链表中数据域值最的那个铄点移到链表的最前面。要求:(x)不得额外甌新的铄炏V?a target="_blank">北京航空航天大学 2001 四(10分)(j)?/span>
【参考答案?/span>
[题目分析] 本题要求链表中数据域值最的l点Ud链表的最前面。首先要查找最值结炏V将其移到链表最前面Q实质上是将该结点从链表上摘下(不是删除q回收空_(d)(j)Q再插入到链表的最前面?/span>
LinkedList delinsertQ?/span>LinkedList listQ?/span>
?/span>list是非I线性链表,铄点结构是Q?/span>dataQ?/span>linkQ,data是数据域Q?/span>link是链域?/span>
∥本法链表中数据域值最的那个l点Ud链表的最前面?/span>
{p=list->linkQ∥p是链表的工作指针
pre=listQ?/span> ?/span>pre指向链表中数据域最值结点的前驱?/span>
q=pQ?/span> ?/span>q指向数据域最值结点,初始假定是第一l点
while Q?/span>p->link!=nullQ?/span>
{ifQ?/span>p->link->data<q->dataQ?/span>{pre=pQ?/span>q=p->linkQ?/span>} ∥找到新的最值结点;
p=p->linkQ?/span>
}
if (q!=list->link) ∥若最值是W一元素l点Q则不需再操?/span>
{pre->link=q->linkQ?/span> ∥将最值结点从链表上摘下;
q->link= list->linkQ∥?/span>ql点插到链表最前面?/span>
list->link=qQ?/span>
}
}∥算法结?/span>
[法讨论] 法中假?/span>list带有头结点,否则Q插入操作变?/span>q->link=listQ?/span>list=q?/span>
2022考研初复试已l接q尾壎ͼ考研学子全面q入2023届备?/b>Q跨考ؓ(f)23考研的考生准备?0大课包全E准备、全q复?fn)备考计划、目标院校专业辅对{全真复试模拟练?fn)和全程针对性指|2023考研的小伙伴针也已经开始择校和复习(fn)?jin),跨考考研畅学5.0版本全新升Q无Z在校在家都可以更自如的完成你的考研复习(fn)Q?/a>暑假集训?/span>带来?jin)院校专业初步选择Q明方向;考研备考全q规划,核心(j)知识点入门;个性化制定备考方案,助你赢在赯U,早出发一点离成功更q一点!
点击右侧咨询?/strong>直接前往?jin)解更?/strong>
考研院校专业选择和考研复习(fn)计划 | |||
2023备考学?/td> | 2023U上U下随时学习(fn) | 34所自划UK校考研复试分数U汇?/td> | |
2022考研复试最全信息整?/a> | 全国各招生院校考研复试分数U汇?/a> | ||
2023全日制封闭训l?/span> | 全国各招生院校考研调剂信息汇?/a> | ||
2023考研先知 | 考研考试U目有哪些? | 如何正确看待考研分数U? | |
不同院校相同专业如何选择更适合自己?/a> | 从就业说考研如何择专业? | ||
手把手教你如何选专业? | 高校研究生教育各学科门类排行?/a> |
相关推荐
跨考考研评
班型 | 定向班型 | 开班时?/td> | 高定?/td> | 标准?/td> | 评介绍 | 咨询 |
U季集训 | 冲刺?/td> | 9.10-12.20 | 168000 | 24800?/td> | 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定? | |
2023集训畅学 | 非定向(政英?数政qQ?/td> | 每月20?/td> | 22800?协议? | 13800?/td> | 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td> |