为什么用快慢指针找链表的环,快指针和慢指针一定会相遇?
来源:互联网 发布:.shop域名上线时间 编辑:程序博客网 时间:2024/04/30 08:08
这个问题你可以用数学归纳法来思考。首先,由于链表是个环,所以相遇的过程可以看作是快指针从后边追赶慢指针的过程。那么做如下思考:
1:快指针与慢指针之间差一步。此时继续往后走,慢指针前进一步,快指针前进两步,两者相遇。
2:快指针与慢指针之间差两步。此时唏嘘往后走,慢指针前进一步,快指针前进两步,两者之间相差一步,转化为第一种情况。
3:快指针与慢指针之间差N步。此时继续往后走,慢指针前进一步,快指针前进两步,两者之间相差(N+1-2)-> N-1步。
作者:知乎用户
链接:https://www.zhihu.com/question/23208893/answer/117115415
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
0 0
- 为什么用快慢指针找链表的环,快指针和慢指针一定会相遇?
- 判断链表是否有环为什么快慢指针一定会相遇
- “快指针”、“慢指针”
- 为什么用快慢指针检测链表是否有环的时候,快指针的步长选择的是2,而不是3,4,5?
- 证明在含环的链表中,快慢指针最终会相遇。
- 快慢指针的应用
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 快慢指针
- 476. Number Complement(C语言)
- 使用Sonar集成Jenkins进行代码静态检查
- 程序流程的控制之条件分支(Delphi)
- 基于Android ServerSocket的简易聊天室功能
- jsp语言基础(4)
- 为什么用快慢指针找链表的环,快指针和慢指针一定会相遇?
- Java Comparable Comparator 接口的使用感悟
- 储存图片刷新图库,使图片在图库第一个
- python 3 爬虫防坑手册——常更
- npm和bower的区别
- 2017年第十届华中地区大学生数学建模邀请赛经典赛C题 雄安新区的设立对北京的影响研究
- poj3090(欧拉函数)
- 字符串的基本操作
- Eclipse进行debug启动Tomcat时,由于启动项过多45秒超时解决方式