Some of my solutions and attempts for leetcode problems
| # | Title | Solution | Difficulty | Topics |
|---|---|---|---|---|
| 1 | Two Sum | Java, Python | Easy | Array Hash Table |
| 2 | Add Two Numbers | Java, Python | Medium | Linked List Math Recursion |
| 12 | Integer to Roman | Java, Python | Medium | Hash Table Math String |
| 21 | Merge Two Sorted Lists | Java, Python | Easy | Linked List |
| 24 | Swap Nodes in Pairs | Java, Python | Medium | Linked List |
| 26 | Remove Duplicates from Sorted Array | C, Java, Javascript, Python | Easy | Array Two Pointers |
| 27 | Remove Element | C, Java, Javascript, Python | Easy | Array Two Pointers |
| 35 | Search Insert Position | Java, Javascript, Python | Easy | Array Binary Search |
| 36 | Valid Sudoku | Java | Medium | Array Hash Table Matrix |
| 49 | Group Anagrams | Java | Medium | Array Hash Table String Sorting |
| 66 | Plus One | Java, Javascript, Python | Easy | Array Math |
| 74 | Search a 2D Matrix | Java | Medium | Array Binary Search Matrix |
| 83 | Remove Duplicates from Sorted List | Java, Python | Easy | Linked List |
| 89 | Partition List | Java | Medium | Linked List Two Pointers |
| 94 | Binary Tree Inorder Traversal | Java | Easy | Stack Tree DFS BFS |
| 98 | Validate Binary Search Tree | Java | Medium | Tree DFS BFS Binary Tree |
| 100 | Same Tree | Java | Easy | Tree DFS BFS Binary Tree |
| 104 | Maximum Depth of Binary Tree | Java | Easy | Tree DFS BFS |
| 108 | Convert Sorted Array to Binary Search Tree.java | Java | Easy | Array Tree Divide and Conquer Binary Tree Binary Search Tree |
| 125 | Valid Palindrome | Java | Medium | Two Pointers String |
| 128 | Longest Consecutive Sequence | Java | Medium | Array Hash Table Union Find |
| 136 | Single Number | Java, Python | Easy | Array Bit Manipulation |
| 141 | Linked List Cycle | Java, Python | Easy | Linked List Hash Table Two Pointer |
| 144 | Binary Tree Preorder Traversal | Java, Python | Easy | Stack Tree Depth-First Search Binary Tree |
| 145 | Binary Tree Postorder Traversal | Java, Python | Easy | Stack Tree Depth-First Search Binary Tree |
| 160 | Intersection of Two Linked List | Java, Python | Easy | Linked List Hash Table Two Pointer |
| 167 | Two Sum II | Java | Medium | Array Two Pointers Binary Search |
| 181 | Employees Earning More Than Their Managers | SQL | Easy | Database |
| 182 | Duplicate Emails | SQL | Easy | Database |
| 183 | Customers Who Never Order | SQL | Easy | Database |
| 184 | Department Highest Salary | SQL | Easy | Database |
| 196 | Delete Duplicate Emails | SQL | Easy | Database |
| 197 | Rising Temperature | SQL | Easy | Database |
| 203 | Remove Linked List Elements | Java, Python | Easy | Linked List |
| 206 | Reverse Linked List | Java, Python | Easy | Linked List Recursion |
| 217 | Contains Duplicate | Java, Python | Easy | Array Hash Table Sorting |
| 225 | Implement using Queues | C, Java, Javascript, Python | Easy | Stack Queue Design |
| 226 | Invert Binary Tree | Java, Python | Easy | Tree DFS BFS Binary Tree |
| 232 | Implement Queue using Stacks | Java, Python | Easy | Stack Queue Design |
| 234 | Palindrome Linked List | Java, Python | Easy | Linked List |
| 235 | Lowest Common Ancestor | Java, Python | Easy | Tree DFS BFS Binary Tree |
| 237 | Delete Node in a Linked List | Java | Easy | Linked List |
| 238 | Product of Array Except Self | Java | Medium | Array Prefix Sum |
| 242 | Valid Anagram | Java | Easy | Hash Table String Sorting |
| 257 | Binary Tree Path | Java | Easy | String Backtracking Tree Depth-First Search Binary Tree |
| 328 | Odd Even Linked List | Java | Medium | Linked List |
| 347 | Top K Frequent Elements | Java | Medium | Array Hash Table Sorting Heap(Priority Queue) |
| 377 | Combination Sum IV | Java | Medium | Array Dynammic Programming |
| 382 | Linked List Random Node | Java | Medium | Linked List Math Reservoir Sampling Randomized |
| 387 | First Unique Character in a String | Java | Easy | Hash Table String Queue Counting |
| 404 | Sum of Left Leaves | Java | Easy | Tree DFS BFS Binary Tree` |
| 430 | Flatten a Multilevel Doubly Linked List | Java | Medium | Linked List Doubly-Linked List |
| 445 | Add Two Numbers II | Java | Medium | Linked List Stack Math |
| 511 | Game Play Analysis I | SQL | Easy | Database |
| 530 | Minimum Absolute Difference in BST | Java | Easy | Tree DFS BFS Binary Search Tree Binary Tree |
| 543 | Diameter of Binary Tree | Java | Easy | Tree DFS Binary Tree |
| 559 | N-ary Tree | Java | Easy | Tree DFS BFS |
| 563 | Binary Tree Tile | Java | Easy | Tree DFS Binary Tree |
| 584 | Find Customer Referee | SQL | Easy | Database |
| 586 | Customer Placing the Largest Number of Orders | SQL | Easy | Database |
| 589 | N-ary Tree Preorder Traversal | Java | Easy | Stack Tree DFS |
| 590 | N-ary Tree Postorder Traversal | Java | Easy | Stack Tree DFS |
| 595 | Big Countries | SQL | Easy | Database |
| 596 | Classes More Than 5 Students | SQL | Easy | Database |
| 606 | Construct String from Binary Tree | Java | Easy | String Tree DFS Binary Tree |
| 607 | Sales Person | SQL | Easy | Database |
| 617 | Merge Two Binary Trees | Java | Easy | Tree DFS BFS Binary Tree |
| 620 | Not Boring Movies | SQL | Easy | Database |
| 622 | Design Circular Queue | Java | Medium | Array Linked List Design Queue |
| 627 | Swap Salary | SQL | Easy | Database |
| 637 | Average of Levels in Binary Tree | Java | Easy | Tree DFS BFS Binary Tree |
| 641 | Design Circular Deque | Java | Medium | Array Linked List Design Queue |
| 653 | Two Sum IV | Java | Easy | Hash Table Two Pointer DFS BFS Tree Binary Binary Search Tree |
| 700 | Search in a Binary Search Tree | Java | Easy | Tree Binary Search Tree Binary Tree |
| 704 | Binary Search | Java | Easy | Array Binary Search |
| 705 | Design HashSet | Java | Easy | Array Hash Table Linked List Hash Function Design |
| 706 | Design HashMap | Java | Easy | Array Hash Table Linked List Design Hash Function |
| 725 | Split Linked List in Parts | Java | Medium | Linked List |
| 783 | Minimum Distance Between BST Nodes | Java | Easy | Tree BFS DFS Binary Search Tree Binary Tree |
| 809 | Find and Replace Pattern | Java | Medium | Array Hash Table String |
| 817 | Linked List Components | Java | Medium | Hash Table Linked List |
| 872 | Leaf-SimilarTrees | Java | Easy | Tree Binary Tree Depth-First Search |
| 876 | Middle of the Linked List | Java | Easy | Linked List Two Pointers |
| 897 | Increasing Order Search Tree | Java | Easy | Stack Tree Depth-First Search Breadth-First Search Binary Tree |
| 916 | Word Subsets | Java | Medium | Array Hash Table String |
| 921 | Minimum Add to Make Parentheses Valid | Java | Medium | String Stack Greedy |
| 933 | Number of Recent Calls | Java | Easy | Design Queue Data Stream |
| 938 | Range Sum of BST | Java | Easy | Tree Depth-First Search Breadth-First Search Binary Tree |
| 950 | Reveal Cards In Increasing Order | Java | Medium | Array Queue Sorting Simulation |
| 965 | Univalued Binary Tree | Java | Easy | Tree Depth-First Search Breadth-First Search Binary Tree |
| 1021 | Remove Outermost Prentheses | Java | Easy | String Stack |
| 1022 | Sum of Root to Leaf Binary Number | Java | Easy | Tree Depth-First Search Binary Tree |
| 1047 | Remove All Adjacent Duplicates In String | Java | Easy | String Stack |
| 1050 | Actors and Directors Who Cooperated At Least Three Times | SQL | Easy | Database |
| 1290 | Convert Binary Number in a Linked List to Integer | Java | Easy | Linked List Math |
| 1313 | Decompress Run-Length Encoded List | Java | Easy | Array |
| 1365 | How Many Numbers Are Smaller Than the Current Number | Java | Easy | Array Hash Table Sorting Counting |
| 1379 | Find a Corresponding Node of a Binary Tree in a Clone of That Tree | Java | Easy | Tree Depth-First Search Breadth-First Search Binary Tree |
| 1381 | Design a Stack With Increment Operation | Java | Medium | Array Stack Design |
| 1393 | Capital Gain/Loss | SQL | Medium | Database |
| 1431 | Kids With the Greatest Number of Candies | Java | Easy | Array |
| 1441 | Build an Array With Stack | Java | Easy | Array Stack Simulation |
| 1470 | Shuffle the Array | Java | Easy | Array |
| 1472 | Design Browser History | Java | Medium | Array Linked List Stack Design Doubly-Linked List Data Stream |
| 1475 | Final Prices With a Special Discount in a Shop | Java | Easy | Array Stack Monotonic Stack |
| 1480 | Running Sum of 1d Array | Java | Easy | Array Prefix Sum |
| 1512 | Number of Good Pairs | Java | Easy | Array Hash Table Math Counting |
| 1614 | Masimum Nesting Depth of the Parentheses | Java | Medium | String Stack |
| 1627 | Richest Customer Wealth | Java | Easy | Array Matrix |
| 1669 | Merge In Between Linked Lists | Java | Medium | Linked List |
| 1693 | Daily Leads and Partners | SQL | Easy | Database |
| 1700 | Number of Students Unable to Eat Lunch | Java | Easy | Array Stack Queue Simulation |
| 1721 | Swapping Nodes in a Linked List | Java | Medium | Linked List Two Pointers |
| 1741 | Find Total Time Spent by Each Employee | SQL | Easy | Database |
| 1920 | Build Array from Permutation | Java | Easy | Array Simulation |
| 1929 | Concatenation of Array | Java | Easy | Array |
| 2058 | Find the Minimum and Maximum Number of Nodes Between Critical Points | Java | Medium | Linked List |
| 2073 | Time Needed to Buy Tickets | Java | Easy | Array Queue Simulation |
| 2095 | Delete the Middle Node of a Linked List | Java | Medium | Linked List Two Pointers |
| 2130 | Maximum Twin Sum of a Linked List | Java | Medium | Linked List Two Pointers Stack |
| 2181 | Merge Nodes in Between Zeros | Java | Medium | Linked List Simulation |
| 2215 | Find the Difference of Two Arrays | Java | Easy | Array Hash Table |
| 2236 | Root Equals Sum of Children | Java | Easy | Tree Binary Tree |
| 2326 | Spiral Matrix IV | Java | Medium | Array Linked List Matrix Simulation |
| 2331 | Evaluate Boolean Binary Tree | Java | Easy | Binary Search Tree Depth-First Search |
| 2335 | Minimum Amount of Time To Fill Cups | Java | Easy | Weekly Contest 301 |
| 2336 | Smallest Number in Infinite Set | Java | Easy | Weekly Contest 301 |
| 2337 | Move Pieces to Obtain a String | Java | Medium | Weekly Contest 301 |
| 2341 | Maximum Number of Pairs in Array | Java | Easy | Weekly Contest 302 |
| 2342 | Max Sum of a Pair With Equal Sum of Digits | Java | Medium | Weekly Contest 302 |
| 2343 | Query Kth Smallest Trimmed Number | Java | Medium | Weekly Contest 302 |
| 2351 | First Letter to Appear Twice | Java | Easy | Weekly Contest 303 |
| 2352 | Equal Row and Column Pairs | Java | Medium | Weekly Contest 303 |
| 2357 | Make Array Zero by Subtracting Equal Amounts | Java | Easy | Weekly Contest 304 |
| 2367 | Number of Arithmetic Triplets | Java | Easy | Weekly Contest 305 |