# two pointer

- [Tips](/cracking-leetcode/two-pointer/tips.md)
- [881. Boats to Save People](/cracking-leetcode/two-pointer/881.-boats-to-save-people.md)
- [11. Container With Most Water](/cracking-leetcode/two-pointer/11.-container-with-most-water.md)
- [27. Remove Element](/cracking-leetcode/two-pointer/27.-remove-element.md)
- [42. Trapping Rain Water](/cracking-leetcode/two-pointer/42.-trapping-rain-water.md)
- [167. Two Sum II - Input array is sorted](/cracking-leetcode/two-pointer/167.-two-sum-ii-input-array-is-sorted.md)
- [15. 3Sum](/cracking-leetcode/two-pointer/15.-3sum.md)
- [611. Valid Triangle Number](/cracking-leetcode/two-pointer/611.-valid-triangle-number.md)
- [18. 4Sum](/cracking-leetcode/two-pointer/18.-4sum.md)
- [Page 6](/cracking-leetcode/two-pointer/page-6.md)
- [344. Reverse String](/cracking-leetcode/two-pointer/344.-reverse-string.md)
- [345. Reverse Vowels of a String](/cracking-leetcode/two-pointer/345.-reverse-vowels-of-a-string.md)
- [392. Is Subsequence](/cracking-leetcode/two-pointer/392.-is-subsequence.md)
- [763. Partition Labels](/cracking-leetcode/two-pointer/763.-partition-labels.md)
- [844. Backspace String Compare](/cracking-leetcode/two-pointer/844.-backspace-string-compare.md)
- [925. Long Pressed Name](/cracking-leetcode/two-pointer/925.-long-pressed-name.md)
- [977. Squares of a Sorted Array](/cracking-leetcode/two-pointer/977.-squares-of-a-sorted-array.md)
- [986. Interval List Intersections](/cracking-leetcode/two-pointer/986.-interval-list-intersections.md)
- [Same direction, from start](/cracking-leetcode/two-pointer/same-direction-from-start.md)
- [Lintcode - 610. Two Sum - Difference equals to target](/cracking-leetcode/two-pointer/lintcode-610.-two-sum-difference-equals-to-target.md)
- [Lintcode - 1870 · Number of Substrings with All Zeroes](/cracking-leetcode/two-pointer/1870-number-of-substrings-with-all-zeroes.md)
- [283. Move Zeroes](/cracking-leetcode/two-pointer/283.-move-zeroes.md)
- [1513. Number of Substrings With Only 1s](/cracking-leetcode/two-pointer/1513.-number-of-substrings-with-only-1s.md)
- [26. Remove Duplicates from Sorted Array](/cracking-leetcode/two-pointer/26.-remove-duplicates-from-sorted-array.md)
- [sliding win - subarray type](/cracking-leetcode/two-pointer/sliding-win-subarray-type.md)
- [2444. Count Subarrays With Fixed Bounds](/cracking-leetcode/two-pointer/sliding-win-subarray-type/2444.-count-subarrays-with-fixed-bounds.md)
- [992. Subarrays with K Different Integers](/cracking-leetcode/two-pointer/sliding-win-subarray-type/992.-subarrays-with-k-different-integers.md)
- [2962. Count Subarrays Where Max Element Appears at Least K Times](/cracking-leetcode/two-pointer/sliding-win-subarray-type/2962.-count-subarrays-where-max-element-appears-at-least-k-times.md)
- [sliding window](/cracking-leetcode/two-pointer/sliding-window.md)
- [395. Longest Substring with At Least K Repeating Characters](/cracking-leetcode/two-pointer/sliding-window/395.-longest-substring-with-at-least-k-repeating-characters.md)
- [1052. Grumpy Bookstore Owner](/cracking-leetcode/two-pointer/sliding-window/1052.-grumpy-bookstore-owner.md)
- [1208. Get Equal Substrings Within Budget](/cracking-leetcode/two-pointer/sliding-window/1208.-get-equal-substrings-within-budget.md)
- [487. Max Consecutive Ones II](/cracking-leetcode/two-pointer/sliding-window/487.-max-consecutive-ones-ii.md)
- [lintcode 604 · Window Sum (basic)](/cracking-leetcode/two-pointer/sliding-window/lintcode-604-window-sum-basic.md)
- [3. Longest Substring Without Repeating Characters](/cracking-leetcode/two-pointer/sliding-window/3.-longest-substring-without-repeating-characters.md): 2598 almost the same
- [340. Longest Substring with At Most K Distinct Characters (sliding window, hashmap, two pointers),](/cracking-leetcode/two-pointer/sliding-window/340.-longest-substring-with-at-most-k-distinct-characters-sliding-window-hashmap-two-pointers.md): 159 is the same to this
- [424. Longest Repeating Character Replacement](/cracking-leetcode/two-pointer/sliding-window/424.-longest-repeating-character-replacement.md)
- [1151. Minimum Swaps to Group All 1's Together](/cracking-leetcode/two-pointer/sliding-window/1151.-minimum-swaps-to-group-all-1s-together.md)
- [2134. Minimum Swaps to Group All 1's Together II](/cracking-leetcode/two-pointer/sliding-window/2134.-minimum-swaps-to-group-all-1s-together-ii.md)
- [1610. Maximum Number of Visible Points](/cracking-leetcode/two-pointer/sliding-window/1610.-maximum-number-of-visible-points.md)
- [76. Minimum Window Substring (sliding window)](/cracking-leetcode/two-pointer/sliding-window/76.-minimum-window-substring-sliding-window.md)
- [567. Permutation in String](/cracking-leetcode/two-pointer/sliding-window/567.-permutation-in-string.md)
- [438. Find All Anagrams in a String](/cracking-leetcode/two-pointer/sliding-window/438.-find-all-anagrams-in-a-string.md)
- [1004. Max Consecutive Ones III](/cracking-leetcode/two-pointer/sliding-window/1004.-max-consecutive-ones-iii.md)
- [1248. Count Number of Nice Subarrays](/cracking-leetcode/two-pointer/sliding-window/1248.-count-number-of-nice-subarrays.md)
- [2516. Take K of Each Character From Left and Right](/cracking-leetcode/two-pointer/sliding-window/2516.-take-k-of-each-character-from-left-and-right.md)
- [424. Longest Repeating Character Replacement (ref to  1004](/cracking-leetcode/two-pointer/sliding-window/424.-longest-repeating-character-replacement-ref-to-1004.md)
- [Page 12](/cracking-leetcode/two-pointer/sliding-window/page-12.md)
- [Page 7](/cracking-leetcode/two-pointer/page-7.md)
- [1423. Maximum Points You Can Obtain from Cards](/cracking-leetcode/two-pointer/1423.-maximum-points-you-can-obtain-from-cards.md)
- [643. Maximum Average Subarray I](/cracking-leetcode/two-pointer/643.-maximum-average-subarray-i.md)
- [1176. Diet Plan Performance](/cracking-leetcode/two-pointer/1176.-diet-plan-performance.md)
- [125. Valid Palindrome](/cracking-leetcode/two-pointer/125.-valid-palindrome.md)
- [2108. Find First Palindromic String in the Array](/cracking-leetcode/two-pointer/2108.-find-first-palindromic-string-in-the-array.md)
- [2109. Adding Spaces to a String](/cracking-leetcode/two-pointer/2109.-adding-spaces-to-a-string.md)
- [2110. Number of Smooth Descent Periods of a Stock](/cracking-leetcode/two-pointer/2110.-number-of-smooth-descent-periods-of-a-stock.md)
- [209. Minimum Size Subarray Sum](/cracking-leetcode/two-pointer/209.-minimum-size-subarray-sum.md)
- [777. Swap Adjacent in LR String](/cracking-leetcode/two-pointer/777.-swap-adjacent-in-lr-string.md)
- [lintcode 1375 · Substring With At Least K Distinct Characters](/cracking-leetcode/two-pointer/lintcode-1375-substring-with-at-least-k-distinct-characters.md)
- [443. String Compression](/cracking-leetcode/two-pointer/443.-string-compression.md)
- [1855. Maximum Distance Between a Pair of Values](/cracking-leetcode/two-pointer/1855.-maximum-distance-between-a-pair-of-values.md)
- [80. Remove Duplicates from Sorted Array II](/cracking-leetcode/two-pointer/80.-remove-duplicates-from-sorted-array-ii.md)
- [26. Remove Duplicates from Sorted Array](/cracking-leetcode/two-pointer/26.-remove-duplicates-from-sorted-array-1.md)
- [summaryRanges](/cracking-leetcode/two-pointer/summaryranges.md)
- [5. Longest Palindromic Substring](/cracking-leetcode/two-pointer/5.-longest-palindromic-substring.md)
- [647. Palindromic Substrings](/cracking-leetcode/two-pointer/647.-palindromic-substrings.md)
- [Page 13](/cracking-leetcode/two-pointer/page-13.md)
