Skip to content

Latest commit

 

History

History

Algorithms and Data Structures with TypeScript

libreoffice --calc data-structure-cheat-sheet-typescript.ods & libreoffice --calc problem_solving_log_2024.ods &

TO DO: you have to sort 1 - N numbers using distributed computing. I talked in terms of map reduce, but ideally we can do it through external merge sort. DP Optimization with Monotonic Stack: LC-1335. Minimum Difficulty of a Job Schedule LC-32. Longest Valid Parenthesis. Check out Approach 3 in the official solution. LC-85. Maximal Rectangle. Check out Approach 3 in the official solution.

patterns: Backtracking Binary Search Bitwise Cyclic-Sort Graph: BFS - DFS - Short Path - Dijkstra Two-pointers Tree: Binary Search Tree, AVL Tree Trie: LC-208. Implement Trie (Prefix Tree)

Problems: LC-90. Subsets II LC-425. Word Squares LC-140. Word Break II LC-39. Combination Sum LC-137. Single Number II LC-260. Single Number III LC-832. Flipping an Image LC-41. First Missing Positive LC-287. Find the Duplicate Number LC-301. Remove Invalid Parentheses LC-510. Inorder Successor in BST II LC-1483. Kth Ancestor of a Tree Node LC-33. Search in Rotated Sorted Array LC-405. Convert a Number to Hexadecimal LC-701. Insert into a Binary Search Tree LC-317. Shortest Distance from All Buildings LC-297. Serialize and Deserialize Binary Tree LC-421. Maximum XOR of Two Numbers in an Array LC-154. Find Minimum in Rotated Sorted Array II LC-448. Find All Numbers Disappeared in an Array LC-497. Random Point in Non-overlapping Rectangles LC-116. Populating Next Right Pointers in Each Node LC-235. Lowest Common Ancestor of a Binary Search Tree LC-865. Smallest Subtree with all the Deepest Nodes LC-694. Number of Distinct Islands LC-980. Unique Paths III LC-236. Lowest Common Ancestor of a Binary Tree LC-489. Robot Room Cleaner: LC-687. Longest Univalue Path LC-437. Path Sum III LC-1367. Linked List in Binary Tree LC-490. The Maze LC-106. Construct Binary Tree from Inorder and Postorder Traversal: LC-218. The Skyline Problem LC-241. Different Ways to Add Parentheses LC-457. Circular Array Loop LC-234. Palindrome Linked List LC-143. Reorder List LC-621. Task Scheduler LC-1058. Minimize Rounding Error to Meet Target LC-316. Remove Duplicate Letters LC-134. Gas Station LC-454. 4Sum II LC-1460. Make Two Arrays Equal by Reversing Sub-arrays LC-381. Insert Delete GetRandom O(1) - Duplicates allowed LC-299. Bulls and Cows LC-350. Intersection of Two Arrays II LC-1424. Diagonal Traverse II LC-1399. Count Largest Group LC-215. Kth Largest Element in an Array LC-347. Top K Frequent Elements LC-25. Reverse Nodes in k-Group LC-725. Split Linked List in Parts LC-169. Majority Element: LC-229. Majority Element II LC-1344. Angle Between Hands of a Clock LC-470. Implement Rand10() Using Rand7() LC-166. Fraction to Recurring Decimal LC-435. Non-overlapping Intervals LC-759. Employee Free Time LC-616. Add Bold Tag in String LC-708. Insert into a Sorted Circular Linked List LC-969. Pancake Sorting LC-1041. Robot Bounded In Circle LC-974. Subarray Sums Divisible by K LC-724. Find Pivot Index LC-523. Continuous Subarray Sum LC-225. Implement Stack using Queues LC-622. Design Circular Queue LC-346. Moving Average from Data Stream LC-528. Random Pick with Weight LC-398. Random Pick Index LC-95. Unique Binary Search Trees II LC-395. Longest Substring with At Least K Repeating Characters LC-98. Validate Binary Search Tree LC-138. Copy List with Random Pointer LC-92. Reverse Linked List II: LC-21. Merge Two Sorted Lists LC-505. The Maze II LC-743. Network Delay Time LC-1291. Sequential Digits LC-159. Longest Substring with At Most Two Distinct Characters LC-209. Minimum Size Subarray Sum LC-581. Shortest Unsorted Continuous Subarray LC-179. Largest Number LC-503. Next Greater Element II LC-641. Design Circular Deque: LC-716. Max Stack LC-155. Min Stack LC-1286. Iterator for Combination LC-210. Course Schedule II LC-211. Add and Search Word - Data structure design LC-1032. Stream of Characters LC-295. Find Median from Data Stream FC-14. Largest Triple Products: LC-480. Sliding Window Median LC-952. Largest Component Size by Common Factor LC-484. Find Permutation LC-259. 3Sum Smaller LC-15. 3Sum LC-18. 4Sum LC-340. Longest Substring with At Most K Distinct Characters LC-76. Minimum Window Substring: