一、二分查找
思想:寻找左右指针范围的边界
二、移除元素
思想:交换,将与目标值相同的元素赋值为数组最右侧元素值,同时最右侧指针左移,直到当前指针位置=右侧指针位置
三、有序数组的平方
思想:双指针
最大值只可能在数组的两端产生,不断对比左右指针大小排序
四、长度最小的子数组
思想:滑动窗口,不断调节子序列的起始终止位置。
只用一个for循环,索引为滑动窗口的终止位置
每一次循环中固定终止位置,通过不断变更起始位置来计算出最小值
五、螺旋数组
模拟过程,上行从左到右,右侧从上到下,下行从右到左,左侧从下到上
可以按照左闭右开原则,注意每次循环的额偏移量,并在四次循环后偏移量+2,起始位置XY轴各+1
循环次数可以按照旋转圈数n/2
每次for循环的判断条件
上:列<起始列位置+n-偏移量
右:行<起始行位置+n-偏移量
下:列>起始列位置
左:行>起始行位置
标签:位置,起始,循环,数组,右侧,指针 From: https://www.cnblogs.com/LiChaoyue-11/p/18050326