https://github.com/kimtth/neet-code-top-150-python-visual
Convert freeCodeCamp Java Code to Python with step-by-step visuals πΌοΈ and animations ποΈ | NeetCode 150 π§©
https://github.com/kimtth/neet-code-top-150-python-visual
coding-interviews d3-visualization freecodecamp needcode neetcode-150
Last synced: 6 days ago
JSON representation
Convert freeCodeCamp Java Code to Python with step-by-step visuals πΌοΈ and animations ποΈ | NeetCode 150 π§©
- Host: GitHub
- URL: https://github.com/kimtth/neet-code-top-150-python-visual
- Owner: kimtth
- Created: 2025-05-12T08:14:35.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-11-28T08:53:18.000Z (about 2 months ago)
- Last Synced: 2025-11-30T17:45:28.068Z (about 2 months ago)
- Topics: coding-interviews, d3-visualization, freecodecamp, needcode, neetcode-150
- Language: HTML
- Homepage:
- Size: 2.13 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NeetCode 150+ Algorithm Solutions π
## Overview
This repository contains **193 Python** π and **178 Java** β solutions to LeetCode problems, with a focus on the **NeetCode 150** π - a curated list of essential coding interview questions! π»
### Legend
| Symbol | Meaning |
|--------|---------|
| π | Python solution available |
| β | Java solution available |
| π | Part of NeetCode 150 list |
| π | Interactive visualization available |
## Quick Stats
| Category | Count |
|----------|-------|
| Python Solutions π | 193 |
| Java Solutions β | 178 |
| NeetCode 150 π | 150 |
| Visualizations π | 193 |
**π Open index.html** to browse all problems with interactive visualizations.

## Problem Categories π
### Array & Hashing π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 1 | [Two Sum](https://leetcode.com/problems/two-sum/) | β
| β | β
| [Visual](visual/0001_two_sum.html) |
| 36 | [Valid Sudoku](https://leetcode.com/problems/valid-sudoku/) | β
| β
| β
| [Visual](visual/0036_valid_sudoku.html) |
| 49 | [Group Anagrams](https://leetcode.com/problems/group-anagrams/) | β
| β
| β
| [Visual](visual/0049_group_anagrams.html) |
| 88 | [Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/) | β
| β
| β | [Visual](visual/0088_merge_sorted_array.html) |
| 118 | [Pascal's Triangle](https://leetcode.com/problems/pascals-triangle/) | β
| β
| β | [Visual](visual/0118_pascals_triangle.html) |
| 128 | [Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/) | β
| β
| β
| [Visual](visual/0128_longest_consecutive_sequence.html) |
| 169 | [Majority Element](https://leetcode.com/problems/majority-element/) | β
| β
| β | [Visual](visual/0169_majority_element.html) |
| 202 | [Happy Number](https://leetcode.com/problems/happy-number/) | β
| β
| β
| [Visual](visual/0202_happy_number.html) |
| 217 | [Contains Duplicate](https://leetcode.com/problems/contains-duplicate/) | β
| β
| β
| [Visual](visual/0217_contains_duplicate.html) |
| 238 | [Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/) | β
| β
| β
| [Visual](visual/0238_product_of_array_except_self.html) |
| 242 | [Valid Anagram](https://leetcode.com/problems/valid-anagram/) | β
| β
| β
| [Visual](visual/0242_valid_anagram.html) |
| 271 | [Encode and Decode Strings](https://leetcode.com/problems/encode-and-decode-strings/) | β
| β
| β
| [Visual](visual/0271_encode_and_decode_strings.html) |
| 289 | [Game of Life](https://leetcode.com/problems/game-of-life/) | β
| β
| β | [Visual](visual/0289_game_of_life.html) |
| 347 | [Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/) | β
| β
| β
| [Visual](visual/0347_top_k_frequent_elements.html) |
| 380 | [Insert Delete GetRandom O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/) | β
| β
| β | [Visual](visual/0380_insert_delete_getrandom_o1.html) |
| 412 | [Fizz Buzz](https://leetcode.com/problems/fizz-buzz/) | β
| β
| β | [Visual](visual/0412_fizz_buzz.html) |
| 953 | [Verifying an Alien Dictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/) | β
| β
| β
| [Visual](visual/0953_verifying_an_alien_dictionary.html) |
| 1086 | [High Five](https://leetcode.com/problems/high-five/) | β
| β
| β | [Visual](visual/1086_high_five.html) |
### Two Pointers ππ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 11 | [Container With Most Water](https://leetcode.com/problems/container-with-most-water/) | β
| β
| β
| [Visual](visual/0011_container_with_most_water.html) |
| 15 | [3Sum](https://leetcode.com/problems/3sum/) | β
| β
| β
| [Visual](visual/0015_3_sum.html) |
| 42 | [Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/) | β
| β
| β
| [Visual](visual/0042_trapping_rain_water.html) |
| 125 | [Valid Palindrome](https://leetcode.com/problems/valid-palindrome/) | β
| β
| β
| [Visual](visual/0125_valid_palindrome.html) |
| 167 | [Two Sum II](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/) | β
| β
| β
| [Visual](visual/0167_two_sum_ii.html) |
### Sliding Window πͺ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 3 | [Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/) | β
| β
| β
| [Visual](visual/0003_longest_substring.html) |
| 76 | [Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/) | β
| β
| β
| [Visual](visual/0076_minimum_window_substring.html) |
| 121 | [Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/) | β
| β
| β
| [Visual](visual/0121_best_time_to_buy_and_sell_stock.html) |
| 239 | [Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/) | β
| β
| β
| [Visual](visual/0239_sliding_window_maximum.html) |
| 346 | [Moving Average from Data Stream](https://leetcode.com/problems/moving-average-from-data-stream/) | β
| β
| β | [Visual](visual/0346_moving_average_from_data_stream.html) |
| 424 | [Longest Repeating Character Replacement](https://leetcode.com/problems/longest-repeating-character-replacement/) | β
| β
| β
| [Visual](visual/0424_longest_repeating_character.html) |
| 567 | [Permutation in String](https://leetcode.com/problems/permutation-in-string/) | β
| β
| β
| [Visual](visual/0567_permutation_in_string.html) |
### Stack π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 20 | [Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) | β
| β
| β
| [Visual](visual/0020_valid_parentheses.html) |
| 22 | [Generate Parentheses](https://leetcode.com/problems/generate-parentheses/) | β
| β
| β
| [Visual](visual/0022_generate_parentheses.html) |
| 32 | [Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/) | β
| β
| β | [Visual](visual/0032_longest_valid_parentheses.html) |
| 84 | [Largest Rectangle in Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram/) | β
| β
| β
| [Visual](visual/0084_largest_rectangle_in_histogram.html) |
| 150 | [Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/) | β
| β
| β
| [Visual](visual/0150_evaluate_reverse_polish_notation.html) |
| 155 | [Min Stack](https://leetcode.com/problems/min-stack/) | β
| β
| β
| [Visual](visual/0155_min_stack.html) |
| 716 | [Max Stack](https://leetcode.com/problems/max-stack/) | β
| β
| β | [Visual](visual/0716_max_stack.html) |
| 739 | [Daily Temperatures](https://leetcode.com/problems/daily-temperatures/) | β
| β
| β
| [Visual](visual/0739_daily_temperatures.html) |
| 853 | [Car Fleet](https://leetcode.com/problems/car-fleet/) | β
| β
| β
| [Visual](visual/0853_car_fleet.html) |
| 1249 | [Minimum Remove to Make Valid Parentheses](https://leetcode.com/problems/minimum-remove-to-make-valid-parentheses/) | β
| β
| β
| [Visual](visual/1249_min_remove_parentheses.html) |
### Binary Search π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 4 | [Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/) | β
| β
| β
| [Visual](visual/0004_median_two_sorted_arrays.html) |
| 33 | [Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/) | β
| β
| β
| [Visual](visual/0033_search_in_rotated_sorted_array.html) |
| 34 | [Find First and Last Position of Element](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | β
| β
| β
| [Visual](visual/0034_find_first_and_last_position.html) |
| 74 | [Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/) | β
| β
| β
| [Visual](visual/0074_search_2d_matrix.html) |
| 153 | [Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/) | β
| β
| β
| [Visual](visual/0153_min_rotated_sorted.html) |
| 704 | [Binary Search](https://leetcode.com/problems/binary-search/) | β
| β
| β
| [Visual](visual/0704_binary_search.html) |
| 875 | [Koko Eating Bananas](https://leetcode.com/problems/koko-eating-bananas/) | β
| β
| β
| [Visual](visual/0875_koko_eating_bananas.html) |
| 981 | [Time Based Key-Value Store](https://leetcode.com/problems/time-based-key-value-store/) | β
| β
| β
| [Visual](visual/0981_time_based_key_value_store.html) |
### Linked List π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 2 | [Add Two Numbers](https://leetcode.com/problems/add-two-numbers/) | β
| β
| β
| [Visual](visual/0002_add_two_numbers.html) |
| 19 | [Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/) | β
| β
| β
| [Visual](visual/0019_remove_nth_node.html) |
| 21 | [Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) | β
| β
| β
| [Visual](visual/0021_merge_two_sorted_lists.html) |
| 23 | [Merge K Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/) | β
| β
| β
| [Visual](visual/0023_merge_k_sorted_lists.html) |
| 24 | [Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/) | β
| β | β | [Visual](visual/0024_swap_nodes_in_pairs.html) |
| 25 | [Reverse Nodes in k-Group](https://leetcode.com/problems/reverse-nodes-in-k-group/) | β
| β
| β
| [Visual](visual/0025_reverse_nodes_in_k_group.html) |
| 138 | [Copy List with Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer/) | β
| β
| β
| [Visual](visual/0138_copy_list_with_random_pointer.html) |
| 141 | [Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) | β
| β
| β
| [Visual](visual/0141_linked_list_cycle.html) |
| 143 | [Reorder List](https://leetcode.com/problems/reorder-list/) | β
| β
| β
| [Visual](visual/0143_reorder_list.html) |
| 146 | [LRU Cache](https://leetcode.com/problems/lru-cache/) | β
| β
| β
| [Visual](visual/0146_lru_cache.html) |
| 148 | [Sort List](https://leetcode.com/problems/sort-list/) | β
| β
| β
| [Visual](visual/0148_sort_list.html) |
| 206 | [Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) | β
| β
| β
| [Visual](visual/0206_reverse_linked_list.html) |
| 234 | [Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/) | β
| β
| β | [Visual](visual/0234_palindrome_linked_list.html) |
| 287 | [Find the Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/) | β
| β
| β
| [Visual](visual/0287_find_duplicate_number.html) |
| 876 | [Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/) | β
| β
| β | [Visual](visual/0876_middle_of_the_linked_list.html) |
### Trees π³
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 94 | [Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/) | β
| β | β | [Visual](visual/0094_binary_tree_inorder_traversal.html) |
| 98 | [Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/) | β
| β
| β
| [Visual](visual/0098_validate_binary_search_tree.html) |
| 100 | [Same Tree](https://leetcode.com/problems/same-tree/) | β
| β
| β
| [Visual](visual/0100_same_tree.html) |
| 101 | [Symmetric Tree](https://leetcode.com/problems/symmetric-tree/) | β
| β
| β | [Visual](visual/0101_symmetric_tree.html) |
| 102 | [Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) | β
| β
| β
| [Visual](visual/0102_binary_tree_level_order.html) |
| 103 | [Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/) | β
| β
| β | [Visual](visual/0103_binary_tree_zigzag_level_order.html) |
| 104 | [Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/) | β
| β
| β
| [Visual](visual/0104_max_depth_binary_tree.html) |
| 105 | [Construct Binary Tree from Preorder and Inorder](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) | β
| β | β
| [Visual](visual/0105_construct_binary_tree_from_preorder_and_inorder.html) |
| 108 | [Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/) | β
| β | β | [Visual](visual/0108_convert_sorted_array_to_binary_search_tree.html) |
| 110 | [Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/) | β
| β
| β
| [Visual](visual/0110_balanced_binary_tree.html) |
| 111 | [Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree/) | β
| β | β | [Visual](visual/0111_minimum_depth_of_binary_tree.html) |
| 112 | [Path Sum](https://leetcode.com/problems/path-sum/) | β
| β | β | [Visual](visual/0112_path_sum.html) |
| 113 | [Path Sum II](https://leetcode.com/problems/path-sum-ii/) | β
| β | β | [Visual](visual/0113_path_sum_ii.html) |
| 114 | [Flatten Binary Tree to Linked List](https://leetcode.com/problems/flatten-binary-tree-to-linked-list/) | β
| β
| β | [Visual](visual/0114_flatten_binary_tree_to_linked_list.html) |
| 124 | [Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/) | β
| β
| β
| [Visual](visual/0124_binary_tree_maximum_path_sum.html) |
| 199 | [Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/) | β
| β
| β
| [Visual](visual/0199_binary_tree_right_side_view.html) |
| 208 | [Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/) | β
| β
| β
| [Visual](visual/0208_implement_trie.html) |
| 211 | [Design Add and Search Words Data Structure](https://leetcode.com/problems/design-add-and-search-words-data-structure/) | β
| β
| β
| [Visual](visual/0211_design_add_and_search_words.html) |
| 212 | [Word Search II](https://leetcode.com/problems/word-search-ii/) | β
| β
| β
| [Visual](visual/0212_word_search_ii.html) |
| 226 | [Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/) | β
| β
| β
| [Visual](visual/0226_invert_binary_tree.html) |
| 230 | [Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/) | β
| β
| β
| [Visual](visual/0230_kth_smallest_element_in_bst.html) |
| 235 | [Lowest Common Ancestor of a BST](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) | β
| β
| β
| [Visual](visual/0235_lowest_common_ancestor_of_bst.html) |
| 297 | [Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/) | β
| β
| β
| [Visual](visual/0297_serialize_and_deserialize_binary_tree.html) |
| 366 | [Find Leaves of Binary Tree](https://leetcode.com/problems/find-leaves-of-binary-tree/) | β
| β
| β | [Visual](visual/0366_find_leaves_of_binary_tree.html) |
| 543 | [Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/) | β
| β
| β
| [Visual](visual/0543_diameter_of_binary_tree.html) |
| 572 | [Subtree of Another Tree](https://leetcode.com/problems/subtree-of-another-tree/) | β
| β
| β
| [Visual](visual/0572_subtree_of_another_tree.html) |
| 1448 | [Count Good Nodes in Binary Tree](https://leetcode.com/problems/count-good-nodes-in-binary-tree/) | β
| β
| β
| [Visual](visual/1448_count_good_nodes_in_binary_tree.html) |
### Heap / Priority Queue β°οΈ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 215 | [Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/) | β
| β
| β
| [Visual](visual/0215_kth_largest_element.html) |
| 295 | [Find Median from Data Stream](https://leetcode.com/problems/find-median-from-data-stream/) | β
| β
| β
| [Visual](visual/0295_find_median_data_stream.html) |
| 355 | [Design Twitter](https://leetcode.com/problems/design-twitter/) | β
| β
| β
| [Visual](visual/0355_design_twitter.html) |
| 621 | [Task Scheduler](https://leetcode.com/problems/task-scheduler/) | β
| β
| β
| [Visual](visual/0621_task_scheduler.html) |
| 703 | [Kth Largest Element in a Stream](https://leetcode.com/problems/kth-largest-element-in-a-stream/) | β
| β
| β
| [Visual](visual/0703_kth_largest_element_in_stream.html) |
| 973 | [K Closest Points to Origin](https://leetcode.com/problems/k-closest-points-to-origin/) | β
| β
| β
| [Visual](visual/0973_k_closest_points.html) |
| 1046 | [Last Stone Weight](https://leetcode.com/problems/last-stone-weight/) | β
| β
| β
| [Visual](visual/1046_last_stone_weight.html) |
| 1851 | [Minimum Interval to Include Each Query](https://leetcode.com/problems/minimum-interval-to-include-each-query/) | β
| β
| β
| [Visual](visual/1851_minimum_interval_to_include_each_query.html) |
### Graphs πΊοΈ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 127 | [Word Ladder](https://leetcode.com/problems/word-ladder/) | β
| β
| β
| [Visual](visual/0127_word_ladder.html) |
| 130 | [Surrounded Regions](https://leetcode.com/problems/surrounded-regions/) | β
| β
| β
| [Visual](visual/0130_surrounded_regions.html) |
| 133 | [Clone Graph](https://leetcode.com/problems/clone-graph/) | β
| β
| β
| [Visual](visual/0133_clone_graph.html) |
| 200 | [Number of Islands](https://leetcode.com/problems/number-of-islands/) | β
| β
| β
| [Visual](visual/0200_number_of_islands.html) |
| 207 | [Course Schedule](https://leetcode.com/problems/course-schedule/) | β
| β
| β
| [Visual](visual/0207_course_schedule.html) |
| 210 | [Course Schedule II](https://leetcode.com/problems/course-schedule-ii/) | β
| β
| β
| [Visual](visual/0210_course_schedule_ii.html) |
| 261 | [Graph Valid Tree](https://leetcode.ca/all/261.html) | β
| β
| β
| [Visual](visual/0261_graph_valid_tree.html) |
| 269 | [Alien Dictionary](https://leetcode.ca/all/269.html) | β
| β
| β
| [Visual](visual/0269_alien_dictionary.html) |
| 277 | [Find the Celebrity](https://leetcode.ca/all/277.html) | β
| β
| β | [Visual](visual/0277_find_the_celebrity.html) |
| 286 | [Walls and Gates](https://leetcode.ca/all/286.html) | β
| β
| β | [Visual](visual/0286_walls_and_gates.html) |
| 323 | [Number of Connected Components](https://leetcode.ca/all/323.html) | β
| β
| β
| [Visual](visual/0323_number_of_connected_components.html) |
| 329 | [Longest Increasing Path in a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/) | β
| β
| β
| [Visual](visual/0329_longest_increasing_path_in_a_matrix.html) |
| 332 | [Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/) | β
| β
| β
| [Visual](visual/0332_reconstruct_itinerary.html) |
| 417 | [Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/) | β
| β
| β
| [Visual](visual/0417_pacific_atlantic_water_flow.html) |
| 547 | [Number of Provinces](https://leetcode.com/problems/number-of-provinces/) | β
| β
| β | [Visual](visual/0547_number_of_provinces.html) |
| 684 | [Redundant Connection](https://leetcode.com/problems/redundant-connection/) | β
| β
| β
| [Visual](visual/0684_redundant_connection.html) |
| 695 | [Max Area of Island](https://leetcode.com/problems/max-area-of-island/) | β
| β
| β
| [Visual](visual/0695_max_area_of_island.html) |
| 743 | [Network Delay Time](https://leetcode.com/problems/network-delay-time/) | β
| β
| β
| [Visual](visual/0743_network_delay_time.html) |
| 778 | [Swim in Rising Water](https://leetcode.com/problems/swim-in-rising-water/) | β
| β
| β
| [Visual](visual/0778_swim_in_rising_water.html) |
| 787 | [Cheapest Flights Within K Stops](https://leetcode.com/problems/cheapest-flights-within-k-stops/) | β
| β
| β
| [Visual](visual/0787_cheapest_flights_within_k_stops.html) |
| 994 | [Rotting Oranges](https://leetcode.com/problems/rotting-oranges/) | β
| β
| β
| [Visual](visual/0994_rotting_oranges.html) |
| 1584 | [Min Cost to Connect All Points](https://leetcode.com/problems/min-cost-to-connect-all-points/) | β
| β
| β
| [Visual](visual/1584_min_cost_connect_points.html) |
### Dynamic Programming π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 5 | [Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/) | β
| β
| β
| [Visual](visual/0005_longest_palindromic_substring.html) |
| 10 | [Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/) | β
| β
| β
| [Visual](visual/0010_regular_expression_matching.html) |
| 45 | [Jump Game II](https://leetcode.com/problems/jump-game-ii/) | β
| β
| β
| [Visual](visual/0045_jump_game_ii.html) |
| 53 | [Maximum Subarray](https://leetcode.com/problems/maximum-subarray/) | β
| β
| β
| [Visual](visual/0053_maximum_subarray.html) |
| 55 | [Jump Game](https://leetcode.com/problems/jump-game/) | β
| β
| β
| [Visual](visual/0055_jump_game.html) |
| 62 | [Unique Paths](https://leetcode.com/problems/unique-paths/) | β
| β
| β
| [Visual](visual/0062_unique_paths.html) |
| 70 | [Climbing Stairs](https://leetcode.com/problems/climbing-stairs/) | β
| β
| β
| [Visual](visual/0070_climbing_stairs.html) |
| 72 | [Edit Distance](https://leetcode.com/problems/edit-distance/) | β
| β
| β
| [Visual](visual/0072_edit_distance.html) |
| 91 | [Decode Ways](https://leetcode.com/problems/decode-ways/) | β
| β
| β
| [Visual](visual/0091_decode_ways.html) |
| 97 | [Interleaving String](https://leetcode.com/problems/interleaving-string/) | β
| β
| β
| [Visual](visual/0097_interleaving_string.html) |
| 115 | [Distinct Subsequences](https://leetcode.com/problems/distinct-subsequences/) | β
| β
| β
| [Visual](visual/0115_distinct_subsequences.html) |
| 139 | [Word Break](https://leetcode.com/problems/word-break/) | β
| β
| β
| [Visual](visual/0139_word_break.html) |
| 152 | [Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/) | β
| β
| β
| [Visual](visual/0152_maximum_product_subarray.html) |
| 198 | [House Robber](https://leetcode.com/problems/house-robber/) | β
| β
| β
| [Visual](visual/0198_house_robber.html) |
| 213 | [House Robber II](https://leetcode.com/problems/house-robber-ii/) | β
| β
| β
| [Visual](visual/0213_house_robber_ii.html) |
| 300 | [Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/) | β
| β
| β
| [Visual](visual/0300_longest_increasing_subsequence.html) |
| 309 | [Best Time to Buy and Sell Stock with Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/) | β
| β
| β
| [Visual](visual/0309_best_time_cooldown.html) |
| 312 | [Burst Balloons](https://leetcode.com/problems/burst-balloons/) | β
| β
| β
| [Visual](visual/0312_burst_balloons.html) |
| 322 | [Coin Change](https://leetcode.com/problems/coin-change/) | β
| β
| β
| [Visual](visual/0322_coin_change.html) |
| 416 | [Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/) | β
| β
| β
| [Visual](visual/0416_partition_equal_subset_sum.html) |
| 494 | [Target Sum](https://leetcode.com/problems/target-sum/) | β
| β
| β
| [Visual](visual/0494_target_sum.html) |
| 518 | [Coin Change II](https://leetcode.com/problems/coin-change-ii/) | β
| β
| β
| [Visual](visual/0518_coin_change_ii.html) |
| 647 | [Palindromic Substrings](https://leetcode.com/problems/palindromic-substrings/) | β
| β
| β
| [Visual](visual/0647_palindromic_substrings.html) |
| 746 | [Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/) | β
| β
| β
| [Visual](visual/0746_min_cost_climbing_stairs.html) |
| 818 | [Race Car](https://leetcode.com/problems/race-car/) | β
| β
| β | [Visual](visual/0818_race_car.html) |
| 1143 | [Longest Common Subsequence](https://leetcode.com/problems/longest-common-subsequence/) | β
| β
| β
| [Visual](visual/1143_longest_common_subsequence.html) |
### Greedy π€
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 134 | [Gas Station](https://leetcode.com/problems/gas-station/) | β
| β
| β
| [Visual](visual/0134_gas_station.html) |
| 179 | [Largest Number](https://leetcode.com/problems/largest-number/) | β
| β
| β | [Visual](visual/0179_largest_number.html) |
| 678 | [Valid Parenthesis String](https://leetcode.com/problems/valid-parenthesis-string/) | β
| β
| β
| [Visual](visual/0678_valid_parenthesis_string.html) |
| 763 | [Partition Labels](https://leetcode.com/problems/partition-labels/) | β
| β
| β
| [Visual](visual/0763_partition_labels.html) |
| 846 | [Hand of Straights](https://leetcode.com/problems/hand-of-straights/) | β
| β
| β
| [Visual](visual/0846_hand_of_straights.html) |
| 1899 | [Merge Triplets to Form Target Triplet](https://leetcode.com/problems/merge-triplets-to-form-target-triplet/) | β
| β
| β
| [Visual](visual/1899_merge_triplets_to_form_target_triplet.html) |
### Backtracking β©οΈ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 17 | [Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) | β
| β | β
| [Visual](visual/0017_letter_combinations.html) |
| 39 | [Combination Sum](https://leetcode.com/problems/combination-sum/) | β
| β
| β
| [Visual](visual/0039_combination_sum.html) |
| 40 | [Combination Sum II](https://leetcode.com/problems/combination-sum-ii/) | β
| β
| β
| [Visual](visual/0040_combination_sum_ii.html) |
| 46 | [Permutations](https://leetcode.com/problems/permutations/) | β
| β
| β
| [Visual](visual/0046_permutations.html) |
| 51 | [N-Queens](https://leetcode.com/problems/n-queens/) | β
| β
| β
| [Visual](visual/0051_n_queens.html) |
| 78 | [Subsets](https://leetcode.com/problems/subsets/) | β
| β
| β
| [Visual](visual/0078_subsets.html) |
| 79 | [Word Search](https://leetcode.com/problems/word-search/) | β
| β
| β
| [Visual](visual/0079_word_search.html) |
| 90 | [Subsets II](https://leetcode.com/problems/subsets-ii/) | β
| β
| β
| [Visual](visual/0090_subsets_ii.html) |
| 131 | [Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/) | β
| β
| β
| [Visual](visual/0131_palindrome_partitioning.html) |
### Math & Geometry π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 7 | [Reverse Integer](https://leetcode.com/problems/reverse-integer/) | β
| β
| β
| [Visual](visual/0007_reverse_integer.html) |
| 43 | [Multiply Strings](https://leetcode.com/problems/multiply-strings/) | β
| β
| β
| [Visual](visual/0043_multiply_strings.html) |
| 48 | [Rotate Image](https://leetcode.com/problems/rotate-image/) | β
| β
| β
| [Visual](visual/0048_rotate_image.html) |
| 50 | [Pow(x, n)](https://leetcode.com/problems/powx-n/) | β
| β
| β
| [Visual](visual/0050_pow_x_n.html) |
| 54 | [Spiral Matrix](https://leetcode.com/problems/spiral-matrix/) | β
| β
| β
| [Visual](visual/0054_spiral_matrix.html) |
| 66 | [Plus One](https://leetcode.com/problems/plus-one/) | β
| β
| β
| [Visual](visual/0066_plus_one.html) |
| 73 | [Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/) | β
| β
| β
| [Visual](visual/0073_set_matrix_zeroes.html) |
| 136 | [Single Number](https://leetcode.com/problems/single-number/) | β
| β
| β
| [Visual](visual/0136_single_number.html) |
| 190 | [Reverse Bits](https://leetcode.com/problems/reverse-bits/) | β
| β
| β
| [Visual](visual/0190_reverse_bits.html) |
| 191 | [Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/) | β
| β
| β
| [Visual](visual/0191_number_of_1_bits.html) |
| 268 | [Missing Number](https://leetcode.com/problems/missing-number/) | β
| β
| β
| [Visual](visual/0268_missing_number.html) |
| 338 | [Counting Bits](https://leetcode.com/problems/counting-bits/) | β
| β
| β
| [Visual](visual/0338_counting_bits.html) |
| 371 | [Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/) | β
| β
| β
| [Visual](visual/0371_sum_of_two_integers.html) |
| 2013 | [Detect Squares](https://leetcode.com/problems/detect-squares/) | β
| β
| β | [Visual](visual/2013_detect_squares.html) |
### Intervals π
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 56 | [Merge Intervals](https://leetcode.com/problems/merge-intervals/) | β
| β
| β
| [Visual](visual/0056_merge_intervals.html) |
| 57 | [Insert Interval](https://leetcode.com/problems/insert-interval/) | β
| β
| β
| [Visual](visual/0057_insert_interval.html) |
| 252 | [Meeting Rooms](https://leetcode.ca/all/252.html) | β
| β
| β
| [Visual](visual/0252_meeting_rooms.html) |
| 253 | [Meeting Rooms II](https://leetcode.ca/all/253.html) | β
| β
| β
| [Visual](visual/0253_meeting_rooms_ii.html) |
| 435 | [Non-overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/) | β
| β
| β
| [Visual](visual/0435_non_overlapping_intervals.html) |
| 759 | [Employee Free Time](https://leetcode.com/problems/employee-free-time/) | β
| β
| β | [Visual](visual/0759_employee_free_time.html) |
| 1272 | [Remove Interval](https://leetcode.com/problems/remove-interval/) | β
| β
| β | [Visual](visual/1272_remove_interval.html) |
### String π€
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 6 | [Zigzag Conversion](https://leetcode.com/problems/zigzag-conversion/) | β
| β | β | [Visual](visual/0006_zigzag_conversion.html) |
| 8 | [String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/) | β
| β | β | [Visual](visual/0008_string_to_integer_atoi.html) |
| 9 | [Palindrome Number](https://leetcode.com/problems/palindrome-number/) | β
| β | β | [Visual](visual/0009_palindrome_number.html) |
| 12 | [Integer to Roman](https://leetcode.com/problems/integer-to-roman/) | β
| β | β | [Visual](visual/0012_integer_to_roman.html) |
| 13 | [Roman to Integer](https://leetcode.com/problems/roman-to-integer/) | β
| β
| β | [Visual](visual/0013_roman_to_integer.html) |
| 14 | [Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/) | β
| β
| β | [Visual](visual/0014_longest_common_prefix.html) |
| 31 | [Next Permutation](https://leetcode.com/problems/next-permutation/) | β
| β
| β | [Visual](visual/0031_next_permutation.html) |
| 41 | [First Missing Positive](https://leetcode.com/problems/first-missing-positive/) | β
| β
| β | [Visual](visual/0041_first_missing_positive.html) |
| 68 | [Text Justification](https://leetcode.com/problems/text-justification/) | β
| β
| β | [Visual](visual/0068_text_justification.html) |
### Design ποΈ
| # | Problem | π | β | π | π |
|---|---------|:--:|:--:|:--:|:--:|
| 348 | [Design Tic-Tac-Toe](https://leetcode.com/problems/design-tic-tac-toe/) | β
| β
| β | [Visual](visual/0348_design_tic_tac_toe.html) |
| 359 | [Logger Rate Limiter](https://leetcode.com/problems/logger-rate-limiter/) | β
| β
| β | [Visual](visual/0359_logger_rate_limiter.html) |
## Summary by Problem Count
| Category | Python π | Java β | Visuals π |
|----------|:---------:|:-------:|:----------:|
| Array & Hashing | 18 | 16 | 18 |
| Two Pointers | 5 | 5 | 5 |
| Sliding Window | 7 | 7 | 7 |
| Stack | 10 | 9 | 10 |
| Binary Search | 8 | 8 | 8 |
| Linked List | 15 | 14 | 15 |
| Trees | 27 | 23 | 27 |
| Heap / Priority Queue | 8 | 8 | 8 |
| Graphs | 21 | 21 | 21 |
| Dynamic Programming | 27 | 27 | 27 |
| Greedy | 6 | 6 | 6 |
| Backtracking | 9 | 8 | 9 |
| Math & Geometry | 14 | 14 | 14 |
| Intervals | 7 | 7 | 7 |
| String | 9 | 6 | 9 |
| Design | 2 | 2 | 2 |
| **TOTAL** | **193** | **178** | **193** |
---
## How to Use π€
1. Navigate to the category you're interested in
2. Pick a problem and review the solution (π for Python, β for Java)
3. Check if it's part of NeetCode 150 (π) for interview prep priority
4. Open the visualization (π) for step-by-step algorithm animation
## Source
These solutions were adapted from the [freeCodeCamp article on NeetCode 150](https://www.freecodecamp.org/news/prepare-for-technical-interviews-using-neetcode-150/) and refactored into this organized format.
## License π
MIT License.