首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知一个带有头结点的单链表L,其结点结构由两部分组成:数据域data,指针域link。设计一个算法,以最高效的方法实现在单链表中删除数据域最小值结点。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处
已知一个带有头结点的单链表L,其结点结构由两部分组成:数据域data,指针域link。设计一个算法,以最高效的方法实现在单链表中删除数据域最小值结点。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处
admin
2019-08-01
26
问题
已知一个带有头结点的单链表L,其结点结构由两部分组成:数据域data,指针域link。设计一个算法,以最高效的方法实现在单链表中删除数据域最小值结点。要求:
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
选项
答案
(1)算法的基本思想:单链表中删除结点,为使结点删除后不出现“断链”,应知道被删结点的前驱。而“最小值结点”是在遍历整个链表后才能知道。所以算法应首先遍历链表,求得最小值结点及其前驱。遍历结束后再执行删除操作。 (2)算法的设计如下: typedef struct LNode{ int data: struct LNode * next; }LNode*Linkedlist; LinkedList Delete(LinkedList L){//L是带头结点的单链表,本算法删除其最小值结点 Linkedlist*p,*q,*pre: P=L一>next; //p为工作指针,指向待处理的结点。假定链表非空 pre=L; //pre指向最小值结点的前驱 q=P; //q指向最小值结点,初始假定第一元素结点是最小值结点 while(p一>next!=null){ if(P一>next一>data<q一>data){pre=P; q=P->next;} //查最小值结点 p=p一>next; //指针后移 } pre一>next=q->next; //从链表上删除最小值结点 free(q): //释放最小值结点空间 }//结束算法delete
解析
转载请注明原文地址:https://kaotiyun.com/show/iCCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述王莽改制的内容并分析失败的原因。
试述“百家争鸣”的社会背景及主要原因。
20世纪五六十年代经济高速增长时期,西欧经济增长最快的国家是()。
唐朝对外关系呈现出前所未有的盛况,其原因不包括()
赋税是我国古代国家宏观管理经济的重要手段。 据此回答问题:乾隆年间的税种有()
国共十年对峙时期,中国的经济特点包括()。①帝国主义加紧了对中国的经济侵略②民族资本主义经济有了显著发展③官僚资本迅速形成④新民主主义经济有了一定的发展
到1869年为止,人类已发现了多少种化学元素()。
下列科技文化成就,产生于3世纪的是()。①刘徽提出计算圆周率的正确方法②贾思勰著《齐民要术》③钟繇把隶书转化为楷书④马钧发明翻车
康熙五十九年(1720)指定()组织“公行”(“十三行”)专营对外贸易。凡外商税项的征收、货物的交易,以及外商生活的管理等,均归“行商”负责。
某计算机的Cache共有16块,采用2路组相联映射方式(即每组2块)。每个主存块大小为32字节,按字节编址。主存129号单元所在主存块应装入到的Cache组号是()。
随机试题
关于芬太尼的描述中,下列哪项错误
A.P波B.QRS波群C.T波D.ST段E.Q-T间期代表心房除极波形的是()
A.表证B.里证C.寒证D.热证E.痰饮
背景A安装公司承包某分布式能源中心的机电安装工程,工程内容有:冷水机组、燃气锅炉、配电柜、水泵等设备的安装和冷热水管道、电缆排管及电缆施工。分布式能源中心的冷水机组、燃气锅炉、配电柜、水泵等设备由业主采购,金属管道、电力电缆及各种材料由安装公司采
动产物权以()为公示手段。
擅自改变原有防火分区,造成防火分区面积超过规定的()的,可以判定为重大火灾隐患。
当基金的持有人不足1000人时,该基金将面临暂停或终止上市交易的后果。()
物业管理服务的()决定了其受益主体的广泛性和差异性。
团体初创阶段的活动主要有两类,它们是()。
新课程改革强调的综合实践活动就是课外活动。()
最新回复
(
0
)