首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
单链表有环,是指单链表的最后一个结点的指针指向了链表中的某个结点(通常单链表的最后一个结点的指针域是为空的)。试编写算法判断单链表是否存在环。 (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释
单链表有环,是指单链表的最后一个结点的指针指向了链表中的某个结点(通常单链表的最后一个结点的指针域是为空的)。试编写算法判断单链表是否存在环。 (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释
admin
2018-07-17
20
问题
单链表有环,是指单链表的最后一个结点的指针指向了链表中的某个结点(通常单链表的最后一个结点的指针域是为空的)。试编写算法判断单链表是否存在环。
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
(3)说明你所设计算法的时间复杂度和空间复杂度。
选项
答案
(1)算法的基本设计思想: 设置两个指针(slow,fast),初始时都指向头结点,slow每次前进1步,fast每次前进2步。如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。当然,当fast先进入到尾部为NULL,则说明链表中不存在环。 (2)算法的实现如下: bool IsExitsLoop(list *head) { list*slow=head, *fast=head; //定义两个指针 while(fast&&fast—>next) //都不空 { slow=slow—>next; fast=fast—>next—>next, if(slow==fast) //相遇,存在环 break; } return !(fast==NULL||fast—>next==NULL); } 当fast若与slow相遇时,slow肯定没有走遍历完链表,故算法的时间复杂度为O(N),空间复杂度为O(1)。
解析
转载请注明原文地址:https://kaotiyun.com/show/f8Ri777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
中国第一个资产阶级革命团体兴中会建立的时间是()。
魏晋南北朝的手工业技术有所进步,下列各项能反映这一特点的是()。①培育出“三熟之稻”②“灌钢”技术的发明③吴培育出八辈之蚕④纸成为最主要的书写材料
十六国时期的历史,可以划分为前后两个时期,其分界线是()。
主张对义和团实行安抚策略的是()。
20世纪70年代,资本主义经济发展进入“滞胀”时期,对“滞胀”含义的正确表述是()。
公元843年,查理曼的三个孙子签订《凡尔登条约》三分查理曼帝国,奠定的三个国家的雏形是()。①德意志②法兰西③西班牙④意大利
唐顺宗时,以王叔文、王侄为首的朝臣与宦官之间发生的冲突,称为()。
某计算机采用微程序控制方式,微指令字长32位,采用字段直接编码的控制方式,共有55个微命令,可分为6个互斥组,分别包含1、3、7、8、12、24个微命令。另外,该机共有5个可判定的外部条件,采用断定方式形成后续微指令地址。(1)设计该机微指令的格式,
荷兰国旗问题:设有一个仅红、白、蓝三种颜色的条块组成的条块序列,请编写一个时间复杂度为O(n)的算法,使得这些条块按红、白、蓝的顺序排好,即排成荷兰国旗图案。
快速排序最易发挥其长处的情况是()。
随机试题
材料:在一次主题为“课程资源的研发利用”的教研活动中,教研人员结合某教师的“国家的结构”的教学,组织了评课活动。活动中任课教师与听评教师进行了广泛的沟通和交流,形成了如下点评意见:(1)运用的课程资源与教学内容相符,有利于学生学习;将学生熟知的音
关于Ca2+的生理功用,正确的是
为有效控制工薪业务,产量与工时记录,工资单等一式几联,并由不同部门参与控制。()
甲、乙系同事,共同合租丙的一套两居室住房,经丙同意,甲、乙请丁对该两居室进行简单装修。丁找来戊等3名装修工人进行具体施工。在装修过程中,戊嫌甲养的一盆绿色植物碍事,遂将其搬到阳台窗台上。一日,狂风大作,将那盆绿色植物吹落,砸伤楼下躲避不及的骑车人庚,在躲避
甲公司是一家体育用品生产企业。在进行行业分析时,该企业可用以区分战略群组的变量包括()。
童年随之而去(节选)木心母亲、姑妈等人在睡狮庵请和尚做佛事。“我”随着在山上呆了一段时间后,天天吵着要回家,终于——回家啰!走出山门时,回望了一眼——睡狮庵,庵是小的啊,
企业培训,中国最热。场次频,人数多,规模宏,业者众,课程杂,消费巨。世界各地,管理培训如此热烈,落后国家做不到,发达国家用不着。最令人称奇的是,不仅《孙子兵法》《易经》都是管理学,连佛家、道家都上了企业管理讲台。笔者没有资格否认中国古代典籍包含部分的管理思
下列各存储器中,存取速度最快的一种是()。
Whatdidyoulearnabouttheman?
Thecomputer______.Computerswork______.
最新回复
(
0
)