- 博客(5)
- 收藏
- 关注
原创 代码随想录 环形矩阵
原因是:我们从slow这个指针进入环开始分析,从slow进入环开始,slow和fast的相对位置是一格一格得相对缩小的,所以是必能相遇的。仔细观察上面的公式,左边表达的意思是从head到环起点的距离,右边表达的意思是从node到环起点的距离再加上转了n-1圈的距离。上面我们可以求的node的位置,那么我们可以再设置两个指针,一个从head开始,一个从node开始,当两指针相遇时,就是起点的位置。这里的判定不是List中的值的判定,而是List本身的判定,判定List一直往下走会不会再走一遍自己走过的路。
2024-05-29 14:50:35 307
原创 代码随想录 长度最小子数组
那么解题思路就比较明了,右指针向前遍历,增加右边元素到区间中;当区间的和大于target的时候,左指针将左边的元素排出,直到区间的和小于target,就再次让右指针添加。和昨天的思路相同,双指针可以完成这个目标。使用双指针的特点是:一个指针遍历,另一个只在满足条件时发生变化。对于本问题来说,双指针控制的区间内,就是计算的连续元素的区间。不难发现,该种方法能够使所有的大于target的连续元素通过判断条件。主要问题就一个,怎么实现对数组中连着的几个元素进行计算?个正整数的数组和一个正整数。
2024-04-24 10:41:59 555
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人