首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知一个带有头结点的单链表L,其结点结构由两部分组成:数据域data,指针域link。设计一个算法,以最高效的方法实现在单链表中删除数据域最小值结点。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处
已知一个带有头结点的单链表L,其结点结构由两部分组成:数据域data,指针域link。设计一个算法,以最高效的方法实现在单链表中删除数据域最小值结点。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处
admin
2019-08-01
63
问题
已知一个带有头结点的单链表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://www.kaotiyun.com/show/iCCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
我国历史上一次有周密计划、经过长期准备并利用宗教形式组织和发动的农民起义是()。
试论雅尔塔体制与冷战起源的关系。
简述罗马共和国衰亡的原因。
中国民族工业产生后,多集中于沿海地区,其主要原因是()。
赋税是我国古代国家宏观管理经济的重要手段。 据此回答问题:明朝推行一条鞭法中“一”的内容是()
1980-1987年撒哈拉以南非洲人均国民生产总值增长率为-2.9%。大部分国家经济急剧下滑,非洲的80年代被称“为失去发展的十年”。出现这现象关键原因在于这些国家
某新石噐遗址发现大量稻谷壳和稻草,红士,防洪水城垣,此遗址可能是
三国时期,魏、蜀、吴三国灭亡的历史顺序是()。
最早以立法形式巩固大化改新成果的法令是()。
分页存储管理中,页表的功能是什么?当系统中的地址空间变得非常大时(如32位地址空间),会给页表的设计带来什么样的新问题?请给出一种解决方法,分析它的优点和缺点。
随机试题
据《跟单信用证统一惯例》的规定,如一个信用证未标明该信用证是否可转让,应理解为()
下列句子中成语使用不恰当的一句是
关于头颅CT扫描的描述,正确的是
猪巴氏杆菌可使猪咽、喉头部的黏膜下和下颌间隙的皮下结缔组织发生严重的炎性水肿,并引起声门狭窄,故在临床上呈现严重的()。
( )情况下,造成工期延误,经工程师确认后,工期相应顺延。
根据生产的火灾危险性分类标准,石油气体分馏厂房的火灾危险性类别应确定为()。
在布卢姆的教育目标分类学中,认知领域的最高级目标是【】
人们根据已知的信息,利用熟悉的规则解决问题,最后得到唯一的答案,这种思维方式是()。
从正态总体X~N(0,σ2)中抽取简单随机样本X1,X2,…,Xn,则可作为参数σ2的无偏估计量的是().
表达式:(int)((double)9/2)-9%2的值是()。
最新回复
(
0
)