代码随想录 day2
977 有序数组的平方
暴力解法:每个数先平方,然后排序
双指针法:因为数组是有序的,数组平方的最大值一定在数组的两边。定义两个指针i,j分别指向数组的头和尾。定义一个新数组,指针k指向尾。当i小于等于k的时候,如果nums[i]*nums[i]小于nums[j]*nums[j],则说明数组的最大值在尾处。将最大值放入新的数组尾部。
209 长度最小的子数组
思路:定义两个指针,两个都指向头,A指针指向头,B指针一直往后移,直到找到sum大于等于target。
只要sum大于等于target,A指针就像后移,直到sum小于target,此时,B指针继续向后移。
59循环矩阵
思路:保持循环不变量的原则,即每次处理都是左闭右开,都处理【头,尾)