双指针算法 双指针从广义上来说,是指用两个变量在线性结构上遍历而解决的问题。狭义上说, 对于数组,指两个变量在数组上相向移动解决的问题; 对于链表,指两个变量在链表上同向移动解决的问题,也称为「快慢指针」问题。 双指针算法是基于暴力解法的优化。 一些思考 感觉和栈、队列和堆有关的题目,如果有必要定义一个数据结构,那么则最好是单调的,比如单调递减队列。