Leetcoder for Interview

  1. understand meaning of problem and make sure edge case with interviewer

  2. talk about solutions from scratch, brute force is ok

  3. write code step by step concisely, avoid built-up function

  4. time and space complexity

  5. optimization

Table

# Title Tag Difficulty Solution
2 Add Two Numbers linkedlist Medium Javascript
8 String to Integer (atoi) string Medium Java
15 3Sum two pointers Medium Java
20 Valid Parentheses stack Easy Java
21 Merge Two Sorted Lists linkedlist Easy Javascript
23 Merge K Sorted Lists linkedlist Hard Java
32 Longest Valid Parentheses dp Hard Java
33 Search in Rotated Sorted Array binary search Medium Java
35 Search Insert Position binary search Easy Java
39 Combination Sum backtrack Medium Java
40 Combination Sum II backtrack Medium Java
42 Trapping Rain Water two pointers Hard Java
46 Permutations backtrack Medium Java
47 Permutations II backtrack Medium Java
49 Group Anagrams hashtable Medium Java
53 Maximum Subarray dp Easy Java/Javascript
62 Unique Paths dp Medium Java
63 Unique Paths II dp Medium Java
67 Add Binary two pointers Easy Java
70 Climb Stairs dp Easy Java/Javascript
71 Simplify Path stack Medium Java
77 Combinations backtrack Medium Java
78 Subsets backtrack Meidum Java
82 Remove Duplicates from Sorted List linkedlist Easy Java
83 Remove Duplicates from Sorted List II linkedlist Meidum Java
88 Merge Sorted Array two pointers Easy Java
90 Subsets II backtrack Meidum Java
94 Binary Tree Inorder Traversal tree Medium Java/Javascript
98 Validate Binary Search Tree tree Medium Java
102 Binary Tree Level Order Traversal bfs Medium Java
103 Binary Tree Zigzag Level Order Traversal bfs Medium Java
105 Construct Binary Tree from Preorder and Inorder Traversal dfs Medium Java
110 Balanced Binary Tree dfs Medium Java
112 Path Sum dfs Easy Java
129 Sum Root to Leaf Numbers dfs Medium Java
133 Clone Graph graph Medium Java
141 Linked List Cycle linkedlist Easy Java
143 Reorder List linkedlist Medium Java
144 Binary Tree Preorder Traversal tree Medium Java
145 Binary Tree Postorder Traversal tree Medium Java
146 LRU Cache design Medium Java
148 Sort List sort -- merge/heap Medium Java
152 Maximum Product Subarray dp Medium Javascript
155 Min Stack stack Easy Java
160 Intersection of Two Linked Lists linkedlist Easy Java
198 House Robber dp Easy
206 Reverse Linked List linkedlist Easy Java
207 Course Schedule graph Medium Java
210 Course Schedule II graph Medium Java
215 Kth Largest Element in an Array sort -- quick/heap Medium Java
221 Maximal Square dp Medium Java
225 Implement Stack using Queues design Easy Java
232 Implement Queue using Stacks design Easy Java
234 Palindrome Linked List linkedlist Easy Java
236 Lowest Common Ancestor of a Binary Tree dfs Medium Java
240 Search a 2D Matrix II binary search Medium Java
279 Perfect Squares dp Medium Java
300 Longest Increasing Subsequence dp Medium
322 Coin Change dp Medium Java
328 Odd Even Linked List linkedlist Medium Java
399 Evaluate Division graph Medium Java
415 Add Strings string Easy Javascript
417 Pacific Atlantic Water Flow dfs/bfs Medium Java
435 Non-overlapping Intervals sort Medium Java
518 Coin Change 2 dp Medium Java
523 Continuous Subarray Sum dp Medium Java
560 Subarray Sum Equals K dp Medium Java
692 Top K Frequent Words sort Medium Java
1143 Longest Common Subsequence dp Medium Java