今日学习的文章链接和视频链接
977.有序数组的平方
题目建议: 本题关键在于理解双指针思想
题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/
文章讲解:https://programmercarl.com/0977.%E6%9C%89%E5%BA%8F%E6%95%B0%E7%BB%84%E7%9A%84%E5%B9%B3%E6%96%B9.html
视频讲解: https://www.bilibili.com/video/BV1QB4y1D7ep
209.长度最小的子数组
题目建议: 本题关键在于理解滑动窗口,这个滑动窗口看文字讲解 还挺难理解的,建议大家先看视频讲解。 拓展题目可以先不做。
题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/
文章讲解:https://programmercarl.com/0209.%E9%95%BF%E5%BA%A6%E6%9C%80%E5%B0%8F%E7%9A%84%E5%AD%90%E6%95%B0%E7%BB%84.html
视频讲解:https://www.bilibili.com/video/BV1tZ4y1q7XE
自己看到题目的第一想法
直接平方,替换原有值。忽略了 非递减序列的意思,
然后自己排序的时候,不知道怎么排序。
直接暴力,时间复杂度大,停止条件不对。
————————————————————-----
没想到结束条件是 n/2.
看完代码随想录之后的想法
非递减序列就是可以有重复的递增序列。
抓住平方后的规律,使用双指针,数组平方后两头大的规律,完成程序。
——————————————————————————
明白INT32_MAX使用, lm = lm < l ? lm : l;
判断条件时 注意等于号
在子数组题目中要求时间复杂度O(n)注意滑动窗口的思路.
_____________________________________________
螺旋矩阵
n分成奇数和偶数,奇数在结束时单独补充n*n。
结束条件为 n/2
今日收获,记录一下自己的学习时长
1.23
4.39
3小时
提高注意力