【Leetcode算法500题】目前B站最完整的数据结构算法教程,包含所有刷题攻
2022-10-17 22:38 作者:啥时候能买的起大房子 | 我要投稿

课代表总结如下👍👍👍
【Leetcode算法500题】目前B站最完整的数据结构算法教程,包含所有刷题
总结:
一、计算机技术的问题😃
二、计算机技术的看法😃
三、计算机技术的结论😃
一、计算机技术的问题😃❓
1、【Leetcode算法500题】目前B站最完整的数据结构算法教程,包含所有刷题
算法时间复杂度分析 P1 - 04:09

二、计算机技术的看法😃
本羸弱关于P12环状链表2解法的一种证明:
基于这种环形链表只有一种形式:链+环;
设前面的链长为x,后面的环长为y,环的节点进行一个标号(0到y-1):
所要求得的就是环上标号为0的节点位置;
模拟三种状态:
1)开始时快指针走2步,慢指针走1步,我们可以认为快指针必定先走完链进入环(链长是否为0不重要)那么当慢指针走进环时,也就是走了x步后,快指针的位置应该在环内的x%y节点处(走了2x步,x步走链,x步在环里转圈);
2)类似变为了一个追及问题,快指针追慢指针,根据以上算得快慢指针进入环时的初始状态,可以得知它们会在节点(y-x%y)处相遇;
3)慢指针回到表头,快慢指针之后每次都只走1步,设它们t步后相遇(必然t>=x),这样它们相遇时,有方程(t-x)%y=(y-x%y+t)%y,化简后我们会发现这个方程是个必然结论,t>=x时t为多少都成立,这说明在当慢指针刚进入环的时候二者就相遇了,相遇的点即为所求,得证。
ps:这是现场就能想出来的方法?太巧妙了,我思索了半天,一整个膜了。
算法时间复杂度分析 P1 - 11:14

三、计算机技术的结论😃
1.学习以上内容
算法时间复杂度分析 P1 - 38:15
