Two Pointers

Fundamentals

Opposite or parallel pointers traversing sequences in linear time O(N)

219 problems·61 Easy·129 Medium·29 Hard
Pattern Study Guide & Cheat Sheet

Search pairs or reverse sequences by moving two indices inward or in parallel, pruning suboptimal options in O(1) time without nested loops.

Core Invariant: Maintain the search space invariant: elements outside [left, right] have already been evaluated and eliminated. Advance whichever pointer monotonically improves or resolves the target condition.

Recognize it (Keywords & Signals)
  • Array is sorted and you need to find a pair, triplet, or target sum
  • Palindrome verification, string reversal, or inward symmetry checking
  • Partitioning an array around a pivot (Dutch National Flag, sort colors)
  • Trapping rainwater / container boundaries where width and height constrain area
When NOT to use

Array is unsorted and problem requires contiguous subarrays with sum K (especially with negative numbers; use Prefix Sum + Hash Map instead).

How to solve (Step-by-step)
  1. 1.Initialize left = 0 and right = len(nums) - 1 (for opposite-direction pointers).
  2. 2.In a `while left < right` loop, evaluate the current state: curr_sum = nums[left] + nums[right].
  3. 3.If target matched, record answer or return immediately.
  4. 4.If curr_sum < target, advance `left += 1` to increase sum; if curr_sum > target, decrement `right -= 1` to decrease sum.
  5. 5.Skip duplicate values using inner while loops when unique tuples are required (e.g. 3Sum).
Watch for (Interview Traps)
  • Off-by-one in loop condition (`left < right` vs `left <= right` when element reuse is prohibited)
  • Forgetting to skip duplicate elements inside the loop when unique triplets/quadruplets are needed
  • Not advancing pointers inside duplicate skip loops causing infinite loops
Opposite-Direction Two Pointers
def two_pointers_search(nums: list[int], target: int) -> list[int]:
    # Prerequisite: array must be sorted
    left, right = 0, len(nums) - 1
    
    while left < right:
        curr_sum = nums[left] + nums[right]
        if curr_sum == target:
            return [left, right]
        elif curr_sum < target:
            left += 1   # Need larger sum -> move left inward
        else:
            right -= 1  # Need smaller sum -> move right inward
            
    return []
Cost
O(n) [or O(n log n) if sorting is required] · O(1) auxiliary memory (Sort in-place to preserve O(1) space guarantee.)
Canonical problems
#167 Two Sum II - Input Array Is Sorted: Inward movement directly targets sum
#15 3Sum: Fix one element, then run Two Pointers on sorted remainder
#11 Container With Most Water: Always move the shorter line inward
#125 Valid Palindrome: Compare characters inward while skipping non-alphanumerics
Easy·138 companies·Max freq 100%·Acc 57.8%
HCLComcastCadence+135
Medium·87 companies·Max freq 100%·Acc 38.2%
PornhubZemosoHSBC+84
Hard·81 companies·Max freq 100%·Acc 67.7%
ThousandEyesCadenceX+78
#153Sum
Medium·62 companies·Max freq 100%·Acc 39.4%
Wissen TechnologySingleStoreGoTo+59
Medium·62 companies·Max freq 100%·Acc 60.4%
PornhubTableauPubMatic+59
Hard·47 companies·Max freq 100%·Acc 54.7%
TinderCohesityStackAdapt+44
Medium·47 companies·Max freq 100%·Acc 52.7%
SplunkSnapWorldQuant+44
Easy·46 companies·Max freq 100%·Acc 64.1%
ChewyJTGLTIMindtree+43
Medium·44 companies·Max freq 100%·Acc 60.3%
GoDaddyRemoteStateLG Electronics+41
Easy·43 companies·Max freq 100%·Acc 53.7%
CadenceCleverTapZenefits+40
Medium·39 companies·Max freq 100%·Acc 70.0%
SlicePocket GemsTarget+36
Easy·38 companies·Max freq 100%·Acc 55.2%
SquarespaceMetaHubspot+35
Medium·32 companies·Max freq 100%·Acc 45.6%
PornhubZeptoMeta+29
Medium·31 companies·Max freq 100%·Acc 57.0%
PhilipsYelpEricsson+28
Easy·30 companies·Max freq 100%·Acc 59.9%
BlackRockXNike+27
Medium·27 companies·Max freq 100%·Acc 73.0%
CitadelNetskopePure Storage+24
Medium·27 companies·Max freq 100%·Acc 45.2%
FiverrBoxApple+24
Easy·27 companies·Max freq 100%·Acc 0.6%
Wissen TechnologyImpetusUdemy+24
Easy·26 companies·Max freq 100%·Acc 54.7%
YahooNeetCode 150NeetCode 150+23
Medium·24 companies·Max freq 90%·Acc 64.6%
NianticNeetCode 150NeetCode 150+21
Medium·21 companies·Max freq 100%·Acc 52.0%
BroadcomSymantecNeetCode 150+18
#184Sum
Medium·20 companies·Max freq 88%·Acc 41.1%
SingleStoreCloudflareNvidia+17
Medium·20 companies·Max freq 88%·Acc 49.9%
YandexCoupangCashfree+17
Easy·18 companies·Max freq 100%·Acc 46.9%
Pocket GemsLG Electronicstcs+15
Medium·18 companies·Max freq 97%·Acc 65.4%
NeetCode 150NeetCode 150Amazon+15
Medium·18 companies·Max freq 95%·Acc 49.2%
NeetCode 150NeetCode 150Yandex+15
Easy·18 companies·Max freq 91%·Acc 58.3%
IXLAMDIntel+15
Medium·18 companies·Max freq 89%·Acc 65.7%
NeetCode 150NeetCode 150Arista Networks+15
Hard·17 companies·Max freq 100%·Acc 64.1%
Media.netOtter.aiX+14
Easy·17 companies·Max freq 92%·Acc 73.9%
InstacartUberWhatnot+14
Easy·16 companies·Max freq 100%·Acc 44.5%
MetaWhatnotFortinet+13
Medium·16 companies·Max freq 100%·Acc 63.3%
MolocoTwo SigmaVerily+13
Easy·16 companies·Max freq 88%·Acc 49.2%
TinkoffFractal AnalyticsWix+13
Easy·16 companies·Max freq 82%·Acc 81.0%
QualcommSiemenstcs+13
Easy·14 companies·Max freq 79%·Acc 50.0%
RokuMicrostrategyAgoda+11
Easy·13 companies·Max freq 88%·Acc 82.1%
Walmart LabsAMDAccenture+10
Medium·13 companies·Max freq 80%·Acc 0.6%
SigmoidUiPathIBM+10
Medium·13 companies·Max freq 77%·Acc 58.5%
PaytmVMwareAmerican Express+10
Easy·13 companies·Max freq 75%·Acc 64.2%
AirbnbWells FargoSamsung+10
Medium·13 companies·Max freq 69%·Acc 78.0%
MicrostrategyServiceNowVisa+10
Easy·13 companies·Max freq 69%·Acc 61.7%
TwitchEPAM SystemsOracle+10
Medium·12 companies·Max freq 100%·Acc 73.1%
VerkadaMixpanelMeta+9
Medium·12 companies·Max freq 100%·Acc 49.0%
ToastHubspotLinkedIn+9
Medium·12 companies·Max freq 100%·Acc 48.9%
HarnessDream11Bloomberg+9
Medium·12 companies·Max freq 80%·Acc 89.9%
MetaNvidiaGeneral Motors+9
Medium·12 companies·Max freq 78%·Acc 42.2%
AndurilZeta GlobalPhonePe+9
Medium·11 companies·Max freq 100%·Acc 52.1%
BlackBuckArista NetworksNvidia+8
Medium·11 companies·Max freq 100%·Acc 77.6%
RobloxBrazeCapital One+8
Medium·11 companies·Max freq 100%·Acc 46.7%
NextdoorSonatusZoho+8
Medium·11 companies·Max freq 91%·Acc 55.2%
DatadogPayPalCitadel+8
Medium·11 companies·Max freq 89%·Acc 83.0%
MetaLinkedInMongoDB+8
Easy·11 companies·Max freq 75%·Acc 82.1%
Wells FargoGoogleMicrosoft+8
Medium·11 companies·Max freq 67%·Acc 82.0%
InMobiBarclaysNeetCode 150+8
Medium·11 companies·Max freq 65%·Acc 35.4%
DoorDashMitsogoWalmart Labs+8
Easy·11 companies·Max freq 63%·Acc 62.1%
BloombergMicrosoftGoogle+8
Medium·10 companies·Max freq 100%·Acc 82.5%
SquareVisaSIG+7
Medium·10 companies·Max freq 100%·Acc 0.7%
Wissen TechnologyFreshWorksAccolite+7
Medium·10 companies·Max freq 100%·Acc 34.6%
XXSnap+7
Medium·10 companies·Max freq 100%·Acc 42.3%
SoFiIBMFaire+7
Medium·9 companies·Max freq 100%·Acc 57.0%
ExpediaAT&TBloomberg+6
Easy·9 companies·Max freq 100%·Acc 57.1%
McDonaldsNvidiaBloomberg+6
Hard·9 companies·Max freq 100%·Acc 23.9%
ArcesiumSamsungTexas Instruments+6
Medium·9 companies·Max freq 100%·Acc 38.4%
LiveRampeBayTikTok+6
Medium·9 companies·Max freq 100%·Acc 52.6%
McDonaldsQualcommSalesforce+6
Medium·9 companies·Max freq 97%·Acc 51.4%
razorpayTekionDE Shaw+6
Medium·9 companies·Max freq 88%·Acc 55.9%
ZeptoAccentureJosh Technology+6
Easy·9 companies·Max freq 88%·Acc 60.1%
CriteoIBMYandex+6
Easy·9 companies·Max freq 63%·Acc 55.3%
AccentureAmazonZoho+6
Medium·9 companies·Max freq 63%·Acc 42.9%
Josh TechnologyNvidiaBloomberg+6
Medium·9 companies·Max freq 51%·Acc 64.8%
LyftByteDanceAmazon+6
Easy·8 companies·Max freq 88%·Acc 63.5%
SamsungMetaCisco+5
Easy·8 companies·Max freq 75%·Acc 76.6%
eBayCouchbaseMeta+5
Hard·8 companies·Max freq 64%·Acc 0.4%
AccoliteFlipkartDE Shaw+5
Medium·8 companies·Max freq 54%·Acc 46.1%
ExpediaSalesforcetcs+5
Easy·7 companies·Max freq 100%·Acc 37.0%
MetaDatadogRokt+4
Easy·7 companies·Max freq 100%·Acc 84.1%
ZapposZohoAmazon+4
Medium·7 companies·Max freq 100%·Acc 61.9%
TwilioWeRideUKG+4
Medium·7 companies·Max freq 88%·Acc 45.1%
CitadelPhonePeAmazon+4
Medium·7 companies·Max freq 88%·Acc 63.6%
AdobeWalmart LabsIBM+4
Medium·7 companies·Max freq 75%·Acc 57.2%
DE ShawAmazonMeta+4
Medium·7 companies·Max freq 68%·Acc 49.7%
PayPayGoldman SachsAmazon+4
Medium·7 companies·Max freq 63%·Acc 51.4%
PayPalIBMOracle+4
Easy·7 companies·Max freq 39%·Acc 33.0%
ZohoLinkedInBloomberg+4
Easy·7 companies·Max freq 39%·Acc 54.1%
BloombergAccentureInfosys+4
Medium·7 companies·Max freq 38%·Acc 60.9%
tcsGoogleGoldman Sachs+4
Medium·6 companies·Max freq 89%·Acc 83.3%
eBayCapgeminiIBM+3
Hard·6 companies·Max freq 88%·Acc 35.1%
MathWorksQualcommIBM+3
Medium·6 companies·Max freq 88%·Acc 34.4%
Squarepoint CapitalWiseVisa+3
Medium·6 companies·Max freq 76%·Acc 83.3%
Josh TechnologyAmazonGoogle+3
Medium·6 companies·Max freq 64%·Acc 63.0%
AndurilGoogleBloomberg+3
Easy·6 companies·Max freq 63%·Acc 87.8%
Josh TechnologyMetaAmazon+3
Easy·6 companies·Max freq 63%·Acc 71.3%
CouchbaseAmazonGoogle+3
Medium·6 companies·Max freq 50%·Acc 36.9%
LinkedInBloombergGoogle+3
Medium·6 companies·Max freq 50%·Acc 84.7%
AmazonBloombergMeta+3
Easy·6 companies·Max freq 42%·Acc 83.9%
IBMGoogleBloomberg+3
Medium·6 companies·Max freq 38%·Acc 49.1%
InfosysGoogleMeta+3
Medium·6 companies·Max freq 38%·Acc 69.6%
AmazonOracleGoogle+3
Easy·6 companies·Max freq 35%·Acc 81.7%
YandexGoogleMeta+3
Medium·5 companies·Max freq 100%·Acc 56.3%
NetEaseDoorDashAmazon+2
Easy·5 companies·Max freq 100%·Acc 86.5%
OptumBloombergAmazon+2
Medium·5 companies·Max freq 100%·Acc 41.1%
PalantirSamsaraBloomberg+2
Hard·5 companies·Max freq 88%·Acc 44.9%
SoFiLinkedInOracle+2
Hard·5 companies·Max freq 88%·Acc 50.0%
Walmart LabsAmazonMeta+2
Medium·5 companies·Max freq 88%·Acc 68.9%
AdobeAccoliteTikTok+2
Easy·5 companies·Max freq 81%·Acc 68.7%
TaniumSnowflakeGoogle+2
Easy·5 companies·Max freq 75%·Acc 72.0%
ZeptoUberBloomberg+2
Easy·5 companies·Max freq 56%·Acc 74.6%
CoupangMicrosoftAmazon+2
Hard·5 companies·Max freq 50%·Acc 53.0%
RubrikIBMMicrosoft+2
Medium·5 companies·Max freq 43%·Acc 56.6%
GoogleAmazonMeta+2
Medium·5 companies·Max freq 39%·Acc 43.6%
GoogleUberBloomberg+2
Medium·5 companies·Max freq 38%·Acc 61.5%
AmazonBloombergGoogle+2
Medium·5 companies·Max freq 38%·Acc 90.8%
AmazonBloombergMicrosoft+2
Easy·5 companies·Max freq 30%·Acc 41.9%
GoogleBloombergAmazon+2
Medium·5 companies·Max freq 28%·Acc 54.7%
GoogleBloombergMeta+2
Medium·5 companies·Max freq 25%·Acc 40.9%
MicrosoftGoogleMeta+2
Medium·5 companies·Max freq 25%·Acc 71.9%
AmazonGoogleMeta+2
Hard·5 companies·Max freq 25%·Acc 46.7%
AmazonBloombergUber+2
Easy·5 companies·Max freq 18%·Acc 74.7%
AmazonBloombergGoogle+2
Medium·4 companies·Max freq 100%·Acc 0.5%
AlphonsoSnowflakeDE Shaw+1
Medium·4 companies·Max freq 100%·Acc 46.4%
QuoraMetaAmazon+1
Easy·4 companies·Max freq 100%·Acc 68.8%
YelpAmazonMicrosoft+1
Medium·4 companies·Max freq 100%·Acc 43.8%
MathWorksGSA CapitalBloomberg+1
Medium·4 companies·Max freq 88%·Acc 62.9%
LinkedInAndurilPalantir+1
Medium·4 companies·Max freq 88%·Acc 55.1%
AdobeUberAmazon+1
Medium·4 companies·Max freq 65%·Acc 56.8%
ServiceNowUberMicrosoft+1
Medium·4 companies·Max freq 63%·Acc 59.7%
FlexportGoogleMeta+1
Easy·4 companies·Max freq 54%·Acc 81.5%
MathWorksPayPalMeta+1
Medium·4 companies·Max freq 39%·Acc 48.4%
TikTokGoogleAmazon+1
Medium·4 companies·Max freq 38%·Acc 37.8%
Goldman SachsAmazonBloomberg+1
Medium·4 companies·Max freq 29%·Acc 65.9%
AmazonBloombergMicrosoft+1
Easy·4 companies·Max freq 29%·Acc 53.8%
GoogleMicrosoftBloomberg+1
Easy·4 companies·Max freq 25%·Acc 77.2%
GoogleBloombergAmazon+1
Medium·4 companies·Max freq 25%·Acc 75.4%
AmazonMetaGoogle+1
Medium·4 companies·Max freq 21%·Acc 0.6%
BloombergGoogleMeta+1
Easy·4 companies·Max freq 18%·Acc 72.9%
BloombergMicrosoftGoogle+1
Easy·4 companies·Max freq 16%·Acc 73.0%
AmazonBloombergMeta+1
Hard·4 companies·Max freq 15%·Acc 64.6%
GoogleMetaAmazon+1
Medium·4 companies·Max freq 13%·Acc 58.1%
MetaAmazonMicrosoft+1
Medium·3 companies·Max freq 100%·Acc 71.9%
SquareDarwinboxAmazon
Medium·3 companies·Max freq 100%·Acc 34.4%
RobinhoodTekionGoogle
Hard·3 companies·Max freq 100%·Acc 28.2%
PhonePePalantirGoogle
Hard·3 companies·Max freq 90%·Acc 44.0%
SprinklrLTIMindtreeGoogle
Medium·3 companies·Max freq 88%·Acc 61.7%
PinterestGoogleMeta
Medium·3 companies·Max freq 75%·Acc 54.8%
Walmart LabsPalo Alto NetworksAmazon
Hard·3 companies·Max freq 75%·Acc 40.5%
DE ShawIBMApple
Medium·3 companies·Max freq 67%·Acc 58.2%
LinkedInGoogleMeta
Hard·3 companies·Max freq 63%·Acc 61.2%
LinkedInGoogleAmazon
Hard·3 companies·Max freq 63%·Acc 49.2%
MetaTikTokAmazon
Medium·3 companies·Max freq 51%·Acc 49.9%
MetaAmazonMicrosoft
Medium·3 companies·Max freq 50%·Acc 56.2%
Goldman SachsAmazonMeta
Medium·3 companies·Max freq 38%·Acc 30.1%
GoogleMetaMicrosoft
Easy·3 companies·Max freq 38%·Acc 60.8%
MicrosoftGoogleBloomberg
Medium·3 companies·Max freq 25%·Acc 67.7%
AmazonMicrosoftGoogle
Hard·3 companies·Max freq 25%·Acc 71.1%
MetaGoogleAmazon
Easy·3 companies·Max freq 25%·Acc 81.2%
GoogleBloombergAmazon
Medium·3 companies·Max freq 25%·Acc 55.7%
GoogleAmazonMicrosoft
Hard·3 companies·Max freq 25%·Acc 63.4%
UberGoogleMicrosoft
Medium·2 companies·Max freq 100%·Acc 31.7%
KLAAmazon
Medium·2 companies·Max freq 100%·Acc 60.3%
ShopeeTeradata
Medium·2 companies·Max freq 89%·Acc 52.8%
USAAGoogle
Medium·2 companies·Max freq 88%·Acc 0.5%
SnapSnap
Medium·2 companies·Max freq 75%·Acc 65.6%
CompassGoogle
Easy·2 companies·Max freq 65%·Acc 72.1%
IBMAmazon
Easy·2 companies·Max freq 51%·Acc 47.5%
MetaGoogle
Easy·2 companies·Max freq 50%·Acc 56.8%
AppleMicrosoft
Easy·2 companies·Max freq 50%·Acc 39.2%
LinkedInAmazon
Medium·2 companies·Max freq 50%·Acc 59.6%
MetaYandex
Medium·2 companies·Max freq 38%·Acc 46.9%
CiscoGoogle
Medium·2 companies·Max freq 37%·Acc 0.4%
DE ShawGoogle
Medium·2 companies·Max freq 28%·Acc 90.4%
AmazonGoogle
Medium·2 companies·Max freq 27%·Acc 33.5%
AmazonGoogle
Medium·2 companies·Max freq 25%·Acc 71.9%
GoogleMeta
Medium·2 companies·Max freq 25%·Acc 75.6%
AmazonMeta
Medium·2 companies·Max freq 25%·Acc 70.1%
TikTokGoogle
Easy·2 companies·Max freq 25%·Acc 77.1%
AmazonGoogle
Medium·2 companies·Max freq 25%·Acc 20.6%
AmazonMicrosoft
Easy·2 companies·Max freq 25%·Acc 59.1%
AmazonGoogle
Medium·2 companies·Max freq 25%·Acc 73.1%
AmazonGoogle
Easy·2 companies·Max freq 25%·Acc 85.5%
AmazonGoogle
Hard·2 companies·Max freq 25%·Acc 64.2%
GoogleBloomberg
Medium·2 companies·Max freq 16%·Acc 64.3%
GoogleAmazon
Medium·2 companies·Max freq 13%·Acc 43.9%
MetaGoogle
Easy·2 companies·Max freq 13%·Acc 79.4%
MetaGoogle
Medium·2 companies·Max freq 13%·Acc 61.3%
MicrosoftGoogle
Medium·1 companies·Max freq 100%·Acc 33.1%
Mitsogo
Easy·1 companies·Max freq 100%·Acc 60.3%
Paytm
Medium·1 companies·Max freq 100%·Acc 32.8%
Paytm
Medium·1 companies·Max freq 100%·Acc 68.8%
Deutsche Bank
Medium·1 companies·Max freq 100%·Acc 52.2%
Teradata
Hard·1 companies·Max freq 88%·Acc 40.9%
Confluent
Easy·1 companies·Max freq 80%·Acc 86.7%
Cognizant
Hard·1 companies·Max freq 75%·Acc 30.2%
Intuit
Medium·1 companies·Max freq 75%·Acc 27.8%
Snowflake
Hard·1 companies·Max freq 51%·Acc 33.5%
DoorDash
Easy·1 companies·Max freq 50%·Acc 53.0%
Uber
Medium·1 companies·Max freq 38%·Acc 31.4%
Amazon
Medium·1 companies·Max freq 38%·Acc 65.7%
Amazon
Easy·1 companies·Max freq 25%·Acc 50.5%
Meta
Easy·1 companies·Max freq 25%·Acc 62.1%
Amazon
Medium·1 companies·Max freq 25%·Acc 68.2%
Amazon
Hard·1 companies·Max freq 25%·Acc 54.3%
Amazon
Hard·1 companies·Max freq 25%·Acc 24.6%
Amazon
Medium·1 companies·Max freq 25%·Acc 55.0%
Amazon
Medium·1 companies·Max freq 25%·Acc 61.1%
Amazon
Hard·1 companies·Max freq 25%·Acc 42.9%
Amazon
Medium·1 companies·Max freq 25%·Acc 72.0%
Amazon
Easy·1 companies·Max freq 25%·Acc 89.5%
Amazon
Medium·1 companies·Max freq 25%·Acc 45.2%
Google
Hard·1 companies·Max freq 25%·Acc 59.0%
Google
Medium·1 companies·Max freq 25%·Acc 32.5%
Google
Medium·1 companies·Max freq 25%·Acc 62.8%
Google
Medium·1 companies·Max freq 25%·Acc 48.9%
Google
Hard·1 companies·Max freq 25%·Acc 41.8%
Google
Medium·1 companies·Max freq 18%·Acc 25.7%
Google
Medium·1 companies·Max freq 13%·Acc 25.4%
Google
Hard·1 companies·Max freq 13%·Acc 35.1%
Google
Medium·1 companies·Max freq 13%·Acc 53.2%
Google
Hard·1 companies·Max freq 13%·Acc 18.2%
Google
Easy·1 companies·Max freq 5%·Acc 0.7%
Meta
Showing 219 of 219 problems in Two PointersFiltered: All Companies