977、有序数组的平方
题目链接:977. 有序数组的平方 - 力扣(LeetCode)
自己一开始:用comparator对数组元素取绝对值进行排序,再平方放入res。
思路:双指针。左右两边指针遍历,每次取较大值放入res。
注意:
1. Arrays.sort用比较器针对封装类,int[]不行。
2. 数组两边^2总是最大的。
209、长度最小的数组
题目链接:209. 长度最小的子数组 - 力扣(LeetCode)
自己一开始:滑动窗口。while控制边界 j {if控制左右指针的++}。过程冗余。
思路:滑动窗口。for控制 j {while内部消化i的所有变动}。
注意:
1. 滑动窗口根据序列情况来灵活调整边界。
59.螺旋矩阵II
题目链接:59. 螺旋矩阵 II - 力扣(LeetCode)
自己一开始:想填满没有被访问的空间,但是不会用代码实现。
思路:循环不变量。每一次循环都是按照一样的顺序处理某个逻辑。
注意:
1. 一共循环n/2次,一次循环消2行。
2. n是奇数时,要给最后一个值单独赋值。