977. 有序数组的平方
文章讲解:代码随想录 (programmercarl.com)
视频讲解:双指针法经典题目 | LeetCode:977.有序数组的平方_哔哩哔哩_bilibili
这道题目也是经典的双指针,利用有序数组平方后,最大值一定出现在数组的其中一端,分别设置头指针和尾指针,比较出最大值后,填到新数组的尾部,依此类推完成新数组即可。
209. 长度最小的子数组
文章讲解:代码随想录 (programmercarl.com)
视频讲解:拿下滑动窗口! | LeetCode 209 长度最小的子数组_哔哩哔哩_bilibili
这道题一开始的思路错了,导致暴力解法也没有写出来。最开始想着从最大长度逐渐缩小区间长度来找到长度最小的子数组,但是缩小区间后,整个子区间变得不好控制。
最好的思路还是控制区间右端逐渐增加区间长度,找到满足条件的子数组,然后控制区间左端,找到长度最小的子数组。重复上述步骤,不断更新最短长度。
59. 螺旋矩阵 II
文章讲解:代码随想录 (programmercarl.com)
视频讲解:一入循环深似海 | LeetCode:59.螺旋矩阵II_哔哩哔哩_bilibili
这道题完全没有思路,看了视频后豁然开朗。重点在螺旋矩阵中,每一条边的处理方式都要相同,这里选择左闭右开,每条边都只处理一个节点。这里的循环圈数也是关键。最后这里面的坐标非常容易混乱,这里要牢记,二维数组对应的第一个下标代表数组,第二个下标代表数组的元素。对于螺旋矩阵要画坐标图的话,X轴竖直向下,Y轴水平向右,i 和 j 分别对应二维数组中第几个数组和数组中第几个元素,在坐标轴中表示的话分别对应X轴和Y轴上的值。