双指针(Two Pointers)用法精讲及解题案例_白话机器学习的博客-CSDN博客
双指针包括:对撞指针、快慢指针、分离双指针
一、对撞指针
对撞指针一般用来解决有序数组或者字符串问题:
-
查找有序数组中满足某些约束条件的一组元素问题:比如二分查找、数字之和等问题。
-
字符串反转问题:反转字符串、回文数、颠倒二进制等问题。
二、快慢指针
快慢指针一般用于处理数组中的移动、删除元素问题,或者链表中的判断是否有环、长度问题。
三、分离双指针
分离双指针一般用于处理有序数组合并,求交集、并集问题。