This repository contains my solutions to various LeetCode problems, implemented in TypeScript. Please follow me and ⭐ this repo if this you find this helpful!
I'm a passionate software engineer with 10+ years of experience building high-performance, user-centric products across web and mobile. I specialize in frontend architecture, developer tooling, and design systems, with a strong foundation in React, TypeScript, and Node.js.
Leetcode profile: Adarsh Nanwani
Website: adarshn.com
| # | Data Structure | Code |
|---|---|---|
| 1 | Adjacency List | adjacency-list.ts |
| 2 | Dequeue | dequeue.ts |
| 3 | Dynamic Array | dynamic-array.ts |
| 4 | Hash Table | hash-table.ts |
| 5 | Linked List | linked-list.ts |
| 6 | Min Heap | min-heap.ts |
| 7 | Treemap | treemap.ts |
| # | Algorithm | Code |
|---|---|---|
| 1 | Insertion sort | insertion-sort.ts |
| 2 | Merge sort | merge-sort.ts |
| 3 | Quick sort | quick-sort.ts |
| 4 | Matrix BFS | matrix-bfs.ts |
| 5 | Matrix DFS | matrix-dfs.ts |
| # | Problem | LeetCode Link | Solution |
|---|---|---|---|
| 1 | Two Sum | Link | 0001.ts |
| 2 | Add Two Numbers | Link | 0002.ts |
| 3 | Longest Substring Without Repeating Characters | Link | 0003.ts |
| 20 | Valid Parentheses | Link | 0020.ts |
| 21 | Merge Two Sorted Lists | Link | 0021.ts |
| 23 | Merge k Sorted Lists | Link | 0023.ts |
| 26 | Remove Duplicates from Sorted Array | Link | 0026.ts |
| 27 | Remove Element | Link | 0027.ts |
| 39 | Combination Sum | Link | 0039.ts |
| 58 | Length of Last Word | Link | 0058.ts |
| 70 | Climbing Stairs | Link | 0070.ts |
| 74 | Search a 2D Matrix | Link | 0074.ts |
| 75 | Sort Colors | Link | 0075.ts |
| 78 | Subsets | Link | 0078.ts |
| 94 | Binary Tree Inorder Traversal | Link | 0094.ts |
| 102 | Binary Tree Level Order Traversal | Link | 0102.ts |
| 105 | Construct Binary Tree from Preorder and Inorder Traversal | Link | 0105.ts |
| 112 | Path Sum | Link | 0112.ts |
| 133 | Clone Graph | Link | 0133.ts |
| 146 | LRU Cache | Link | 0146.ts |
| 155 | Min Stack | Link | 0155.ts |
| 190 | Reverse Bits | Link | 0190.ts |
| 191 | Number of 1 Bits | Link | 0191.ts |
| 198 | House Robber | Link | 0198.ts |
| 199 | Binary Tree Right Side View | Link | 0199.ts |
| 200 | Number of Islands | Link | 0200.ts |
| 206 | Reverse Linked List | Link | |
| 209 | Minimum Size Subarray Sum | Link | 0209.ts |
| 215 | Kth Largest Element in an Array | Link | 0215.ts |
| 217 | Contains Duplicate | Link | 0217.ts |
| 219 | Contains Duplicate II | Link | 0219.ts |
| 225 | Implement Stack using Queues | Link | 0225.ts |
| 230 | Kth Smallest Element in a BST | Link | 0230.ts |
| 338 | Counting Bits | Link | 0338.ts |
| 374 | Guess Number Higher or Lower | Link | 0374.ts |
| 450 | Delete Node in a BST | Link | 0450.ts |
| 695 | Max Area of Island | Link | 0695.ts |
| 701 | Insert into a Binary Search Tree | Link | 0701.ts |
| 703 | Kth Largest Element in a Stream | Link | 0703.ts |
| 704 | Binary Search | Link | 0704.ts |
| 707 | Design Linked List | Link | 0707.ts |
| 875 | Koko Eating Bananas | Link | 0875.ts |
| 918 | Maximum Sum Circular Subarray | Link | 0918.ts |
| 973 | K Closest Points to Origin | Link | 0973.ts |
| 978 | Longest Turbulent Subarray | Link | 0978.ts |
| 994 | Rotting Oranges | Link | 0994.ts |
| 1046 | BLast Stone Weight | Link | 1046.ts |
| 1091 | Shortest Path in Binary Matrix | Link | 1091.ts |
| 1342 | Number of Sub-arrays of Size K and Average Greater than or Equal to Threshold | Link | 1342.ts |
| 1472 | Design Browser History | Link | 1472.ts |
| 1929 | Concatenation of Array | Link | 1929.ts |