经过几天的线上练习,也做了许多练习题,但想要高效进步,不只是需要简简单单的练习,还需要的是要学会总结,以下是有关链表遇到问题的总结。
问题1:求链表中倒数第K个节点
解题思路:定义两个指针p1,p2,开始都指向链表头位置,然后先将P1向前移动K个位置。之后p1,p2同时向前移动,直到P1到链表尾部。此时p2的位置就是倒数第K个。
问题2:判断链表中是否存在环
解题思路:定义两个快慢指针p_fast, p_slow, 初始时都指向链表头结点。然后p_fast以每次两步向前移动。p_slow以每次一步向前移动。如果在移动过程中两指针相遇,则表示存在环。否则链表中不存在环。(当然还有一种解题思路是也是用hash方法来判断链表中是否存在环)
问题3:判断存在环的链表中环的长度
解题思路:两个快慢指针相遇时一定会在环中相遇,根据问题2,当两个指针相遇时,保持快指针不动,然后让慢指针一次以一步的速度移动,当快慢指针再次相遇时慢指针走过的路程便是环的长度(可以想象在一个圆中两个点相遇,然后一个点不动,另一个点继续移动,当两个点相遇时,移动的那个点走过的距离便是圆的周长)
问题4:求存在环的链表中环的入口
解题思路:通过问题3我们知道了怎么求环的长度。假设求得环的长度为n,然后用类似于问题1的解题思路,设两个指针p1,p2分别指向链表头,然后p1向前移动n个位置。之后p1,p2同时向前移动。当p1和p2相遇时 p1(或p2)指向的位置即为环的入口位置
注意:要判断类似A-B-C-A这种情况的存在。
问题5:判断两个链表是否相交
解题思路:首先分别判断两个链表是否存在环。
(1)如果两个链表都不存在环,则直接比较两个链表的表尾节点是否相等即可,如果相等,则相交,否则不想交。
(2)如果一个链表存在环,而另一个链表不存在环,则两个链表肯定不相交.
(3)如果两个链表都存在环。则如果两个链表相交的话则一个链表肯定共用环。通过判断一个链表中任意一个环内节点是否在另一个链表中即可判断两个链表是否相交。
“君子博学而日参省乎己”,不断反思总结才会走的更远,才会离目标越来越近。
(供稿人:王丽莹)
http://www.dxsbao.com/shijian/353535.html
点此复制本页地址
“事不当时固争,防患于未然。”为深入贯彻落实习近平总书记关于加强国家安全教育的重要指示批示精神,江西师范大学生命科学学院大学生党员服务站于2025年4月15日,在惟义楼4202教室开展以“……
江西师范大学生命 江西师范大学生命科学学院大学生党员服务站查看全文 >>
“居安思危,思则有备;防微杜渐,慎终如始。”为深入贯彻落实习近平总书记关于平安中国建设的重要指示精神,全面提升师生安全责任意识,江西师范大学生命科学学院大学生党员服务站于2……
jxsdskydyfwz 江西师范大学生命科学学院查看全文 >>
为深入学习贯彻全国两会精神,推动新时代新征程的使命任务落地生根,引导广大青年学生深刻领会两会精神实质,精准把握时代发展脉搏,江西师范大学生命科学学院大学生党员服务站于3月18日……
江西师范大学生命 江西师范大学生命科学学院大学生党员服务站查看全文 >>
“心有所信,方能行远;学有所向,方能致远。”为加强引导,助力新生锚定青春坐标,江西师范大学生命科学学院大学生党员服务站于2025年3月18日下午在2024级新生宿舍开展“追光逐梦,榜样同行……
jxsdskydyfwz 江西师范大学生命科学学院查看全文 >>
习近平总书记同各界优秀青年代表座谈时指出,要倡导社会文明新风,带头学雷锋,参与志愿服务,担社会责任,关爱他人,多做扶贫济困等实事,以实际行动促进社会进步。雷锋精神是中华民族……
江西师范大学生命 江西师范大学生命科学学院大学生党员服务站查看全文 >>
岁序更替之际,厚积薄发之时,为帮助大一新生更好地进行期末考试复习,营造稳中有进、进中向好的学习氛围,同时引导新生重视宿舍用电安全、提高防范意识,江西师范大学生命科学学院于1……
江西师范大学生命 江西师范大学生命科学学院大学生党员服务站查看全文 >>
习近平总书记深刻指出:“任何事业都离不开共产党员的先锋模范作用。只要共产党员首先站出来、敢于冲上去,就能把群众带动起来、凝聚起来、组织起来,打开一片天地,干出一番事业。”作……
江西师范大学生命 江西师范大学生命科学学院大学生党员服务站查看全文 >>
习近平总书记强调:为深入学习贯彻党的二十届三中全会精神,进一步凝聚思想共识、强化使命担当,江西师范大学生命科学学院党员服务站于11月23日至30日开展“大学生党员轮训”活动。在“怀……
江西师范大学生命科学学院大学生党员服务站 江西师范大学生命科学学院大学生党员服务站查看全文 >>