hot100--双指针(滑动窗口)
以下几题都是使用到一个:定义fast,slow指针,用快指针遍历数组,slow指针不断缩小范围,
移动零
⚠️思路:
使用两个指针(初始化值都为0):
慢指针(slow):指向当前已经处理好的序列的尾部
快指针(fast):指向当前正在遍历的元素
算法步骤
快指针遍历整个数组
当快指针指向的元素非 0 时,将其与慢指针指向的元素交换,然后慢指针前进一位
当快指针指向的元素是 0 时,只移动快指针
这样就能把所有非零元素按顺序移到前面,零自然就被挤到后面了。

长度最小的子数组

乘积小于k的子数组

无重复字符的最长子串

上面几题都是双指针初始化为0,下面是一左一右指针
盛水最多的容器(11)
*⚠️思路:定义一左一右两个指针,因为容积是由短边决定的,而底边已经是最大了,无论移动哪边都是减一,所以那边短就移动哪边,当左右指针相遇时,return


浙公网安备 33010602011771号