My solutions to algorithmic problems in leetcode written in C++ and Python
I have solved quite a number of problems from several topics. See the below table for further details.
- Fork the repository
- Do the desired changes (add/delete/modify)
- Make a pull request
- If there is no solution to a problem in the main branch.
- If your solution is asymptotically faster than the one in the main branch.
- If your algorithm is of the same time complexity but with reduced code size. In this case, comment out the original solution and make a pull request with your solution.
- If you have another method of solving the problem which is asymptotically slower than the original method then, comment your solution in the main file and make a pull request.
One day in the foreseeable future I will have solved all the challenges on leetcode. Then this repository will mostly become a static one.
Constructive criticisms or code reviews of any kind are very much welcome.
If you have any questions about the solutions you can find here, feel free to contact me abhisheksharma.0517@gmail.com.
- Bit Manipulation
- Array
- String
- Linked List
- Stack
- Queue
- Heap
- Tree
- Hash Table
- Math
- Two Pointers
- Sort
- Recursion
- Binary Search
- Binary Search Tree
- Breadth-First Search
- Depth-First Search
- Backtracking
- Dynamic Programming
- Greedy
- Graph
- Geometry
- Simulation
- Design
- C++
- Python
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0239 | Sliding Window Maximum | C++ Python | O(n) | O(k) | Hard | EPI, LintCode | |
0281 | Zigzag Iterator | C++ Python | O(n) | O(k) | Medium | π | |
0346 | Moving Average from Data Stream | C++ Python | O(1) | O(w) | Easy | π | |
0862 | Shortest Subarray with Sum at Least K | C++ Python | O(n) | O(n) | Hard | ||
0933 | Number of Recent Calls | C++ Python | O(1) on average | O(w) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0264 | Ugly Number II | C++ Python | O(n) | O(1) | Medium | CTCI, LintCode | BST, Heap |
0295 | Find Median from Data Stream | C++ Python | O(nlogn) | O(n) | Hard | EPI, LintCode | BST, Heap |
0313 | Super Ugly Number | C++ Python | O(n * k) | O(n + k) | Medium | BST, Heap | |
0358 | Rearrange String k Distance Apart | C++ Python | O(n) | O(n) | Hard | π | Greedy, Heap |
0373 | Find K Pairs with Smallest Sums | C++ Python | O(k * log(min(n, m, k))) | O(min(n, m, k)) | Medium | ||
0378 | Kth Smallest Element in a Sorted Matrix | C++ Python | O(k * log(min(n, m, k))) | O(min(n, m, k)) | Medium | LintCode | |
0407 | Trapping Rain Water II | C++ Python | O(m * n * (logm + logn)) | O(m * n) | Hard | LintCode | |
0632 | Smallest Range | C++ Python | O(nlogk) | O(k) | Hard | ||
0703 | Kth Largest Element in a Stream | C++ Python | O(nlogk) | O(k) | Easy | ||
0846 | Hand of Straights | C++ Python | O(nlogn) | O(n) | Medium | ||
0855 | Exam Room | C++ Python | seat: O(logn) leave: O(logn) |
O(n) | Medium | BST, Hash | |
0857 | Minimum Cost to Hire K Workers | C++ Python | O(nlogn) | O(n) | Hard | Sort | |
0871 | Minimum Number of Refueling Stops | C++ Python | O(nlogn) | O(n) | Hard | Sort | |
1046 | Last Stone Weight | C++ Python | O(nlogn) | O(n) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0007 | Reverse Integer | C++ Python | O(1) | O(1) | Easy | ||
0009 | Palindrome Number | C++ Python | O(1) | O(1) | Easy | ||
0012 | Integer to Roman | C++ Python | O(n) | O(1) | Medium | ||
0013 | Roman to Integer | C++ Python | O(n) | O(1) | Easy | ||
0029 | Divide Two Integers | C++ Python | O(1) | O(1) | Medium | ||
0050 | Pow(x, n) | C++ Python | O(1) | O(1) | Medium | ||
0060 | Permutation Sequence | C++ Python | O(n^2) | O(n) | Medium | Cantor Ordering |
|
0065 | Valid Number | C++ Python | O(n) | O(1) | Hard | Automata |
|
0089 | Gray Code | C++ Python | O(2^n) | O(1) | Medium | ||
0166 | Fraction to Recurring Decimal | C++ Python | O(logn) | O(1) | Medium | ||
0168 | Excel Sheet Column Title | C++ Python | O(logn) | O(1) | Easy | ||
0171 | Excel Sheet Column Number | C++ Python | O(n) | O(1) | Easy | ||
0172 | Factorial Trailing Zeroes | C++ Python | O(1) | O(1) | Easy | ||
0223 | Rectangle Area | C++ Python | O(1) | O(1) | Easy | ||
0233 | Number of Digit One | C++ Python | O(1) | O(1) | Hard | CTCI, LintCode | |
0248 | Strobogrammatic Number III | C++ Python | O(5^(n/2)) | O(n) | Hard | π | |
0258 | Add Digits | C++ Python | O(1) | O(1) | Easy | ||
0263 | Ugly Number | C++ Python | O(1) | O(1) | Easy | ||
0292 | Nim Game | C++ Python | O(1) | O(1) | Easy | LintCode | |
0319 | Bulb Switcher | C++ Python | O(1) | O(1) | Medium | ||
0326 | Power of Three | C++ Python | O(1) | O(1) | Easy | ||
0335 | Self Crossing | C++ Python | O(n) | O(1) | Hard | ||
0338 | Counting Bits | C++ Python | O(n) | O(n) | Medium | ||
0343 | Integer Break | C++ Python | O(logn) | O(1) | Medium | Tricky, DP | |
0365 | Water and Jug Problem | C++ Python | O(logn) | O(1) | Medium | BΓ©zout's identity |
|
0372 | Super Pow | C++ Python | O(n) | O(1) | Medium | ||
0382 | Linked List Random Node | C++ Python | O(n) | O(1) | Medium | Reservoir Sampling |
|
0386 | Lexicographical Numbers | C++ Python | O(n) | O(1) | Medium | ||
0390 | Elimination Game | C++ Python | O(logn) | O(1) | Medium | ||
0391 | Perfect Rectangle | C++ Python | O(n) | O(n) | Hard | ||
0398 | Random Pick Index | C++ Python | O(n) | O(1) | Medium | Reservoir Sampling |
|
0400 | Nth Digit | C++ Python | O(logn) | O(1) | Easy | ||
0413 | Arithmetic Slices | C++ Python | O(n) | O(1) | Medium | ||
0423 | Reconstruct Original Digits from English | C++ Python | O(n) | O(1) | Medium | GCJ2016 - Round 1B | |
0441 | Arranging Coins | C++ Python | O(nlogn) | O(1) | Easy | Binary Search | |
0453 | Minimum Moves to Equal Array Elements | C++ Python | O(n) | O(1) | Easy | ||
0458 | Poor Pigs | C++ Python | O(n) | O(1) | Easy | ||
0469 | Convex Polygon | C++ Python | O(n) | O(1) | Medium | π | |
0470 | Implement Rand10() Using Rand7() | C++ Python | O(1) | O(1) | Medium | ||
0478 | Generate Random Point in a Circle | C++ Python | O(1) | O(1) | Medium | ||
0497 | Random Point in Non-overlapping Rectangles | C++ Python | ctor: O(n) pick: O(logn) |
O(n) | Medium | ||
0517 | Super Washing Machines | C++ Python | O(n) | O(1) | Hard | ||
0519 | Random Flip Matrix | C++ Python | ctor: O(1) pick: O(1) reset: O(n) |
O(n) | Medium | ||
0528 | Random Pick with Weight | C++ Python | ctor: O(n) pick: O(logn) |
O(n) | Medium | ||
0537 | Complex Number Multiplication | C++ Python | O(1) | O(1) | Medium | ||
0553 | Optimal Division | C++ Python | O(n) | O(1) | Medium | ||
0573 | Squirrel Simulation | C++ Python | O(n) | O(1) | Medium | π | |
0592 | Fraction Addition and Subtraction | C++ Python | O(nlogx) | O(n) | Medium | ||
0593 | Valid Square | C++ Python | O(1) | O(1) | Medium | ||
0598 | Range Addition II | C++ Python | O(p) | O(1) | Easy | ||
0625 | Minimum Factorization | C++ Python | O(loga) | O(1) | Medium | π | |
0628 | Maximum Product of Three Numbers | C++ Python | O(n) | O(1) | Easy | ||
0633 | Sum of Square Numbers | C++ Python | O(sqrt(c) * logc) | O(1) | Easy | ||
0634 | Find the Derangement of An Array | C++ Python | O(n) | O(1) | Medium | π | |
0640 | Solve the Equation | C++ Python | O(n) | O(n) | Medium | ||
0651 | 4 Keys Keyboard | C++ Python | O(1) | O(1) | Medium | π | Math, DP |
0660 | Remove 9 | C++ Python | O(logn) | O(1) | Hard | π | |
0672 | Bulb Switcher II | C++ Python | O(1) | O(1) | Medium | ||
0728 | Self Dividing Numbers | C++ Python | O(n) | O(1) | Medium | ||
0754 | Reach a Number | C++ Python | O(logn) | O(1) | Medium | ||
0775 | Global and Local Inversions | C++ Python | O(n) | O(1) | Medium | ||
0779 | K-th Symbol in Grammar | C++ Python | O(1) | O(1) | Medium | ||
0780 | Reaching Points | C++ Python | O(log(max(m, n))) | O(1) | Hard | ||
0781 | Rabbits in Forest | C++ Python | O(n) | O(n) | Medium | ||
0782 | Transform to Chessboard | C++ Python | O(n^2) | O(n) | Hard | ||
0789 | Escape The Ghosts | C++ Python | O(n) | O(1) | Medium | ||
0800 | Similar RGB Color | C++ Python | O(1) | O(1) | Easy | π | |
0810 | Chalkboard XOR Game | C++ Python | O(1) | O(1) | Hard | ||
0812 | Largest Triangle Area | C++ Python | O(n^3) | O(1) | Easy | ||
0829 | Consecutive Numbers Sum | C++ Python | O(sqrt(n)) | O(1) | Medium | ||
0836 | Rectangle Overlap | C++ Python | O(1) | O(1) | Easy | ||
0858 | Mirror Reflection | C++ Python | O(1) | O(1) | Medium | ||
0867 | Prime Palindrome | C++ Python | O(n^(1/2) * (logn + n^(1/2))) | O(logn) | Medium | ||
0883 | Projection Area of 3D Shapes | C++ Python | O(n^2) | O(1) | Easy | ||
0887 | Super Egg Drop | C++ Python | O(klogn) | O(1) | Hard | ||
0891 | Sum of Subsequence Widths | C++ Python | O(n) | O(1) | Hard | ||
0899 | Orderly Queue | C++ Python | O(n^2) | O(n) | Hard | ||
0902 | Numbers At Most N Given Digit Set | C++ Python | O(logn) | O(logn) | Hard | ||
0906 | Super Palindromes | C++ Python | O(n^0.25 * logn) | O(logn) | Hard | ||
0907 | Sum of Subarray Minimums | C++ Python | O(n) | O(n) | Medium | Ascending Stack | |
0908 | Smallest Range I | C++ Python | O(n) | O(1) | Easy | ||
0910 | Smallest Range II | C++ Python | O(nlogn) | O(1) | Medium | ||
0914 | X of a Kind in a Deck of Cards | C++ Python | O(n * (logn)^2) | O(n) | Easy | ||
0963 | Minimum Area Rectangle II | C++ Python | O(n^2) ~ O(n^3) | O(n^2) | Medium | ||
0970 | Powerful Integers | C++ Python | O((logn)^2) | O(r) | Easy | ||
0972 | Equal Rational Numbers | C++ Python | O(1) | O(1) | Hard | ||
1006 | Clumsy Factorial | C++ Python | O(1) | O(1) | Medium | ||
1009 | Complement of Base 10 Integer | C++ Python | O(logn) | O(1) | Easy | ||
1012 | Numbers With Repeated Digits | C++ Python | O(logn) | O(logn) | Hard | ||
1015 | Smallest Integer Divisible by K | C++ Python | O(k) | O(1) | Medium | ||
1017 | Convert to Base -2 | C++ Python | O(logn) | O(1) | Medium | ||
1025 | Divisor Game | C++ Python | O(1) | O(1) | Easy | DP | |
1037 | Valid Boomerang | C++ Python | O(1) | O(1) | Easy | ||
1041 | Robot Bounded In Circle | C++ Python | O(n) | O(1) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0056 | Merge Intervals | C++ Python | O(nlogn) | O(1) | Hard | ||
0057 | Insert Interval | C++ Python | O(n) | O(1) | Hard | ||
0075 | Sort Colors | C++ Python | O(n) | O(1) | Medium | Tri Partition | |
0088 | Merge Sorted Array | C++ Python | O(n) | O(1) | Easy | ||
0147 | Insertion Sort List | C++ Python | O(n^2) | O(1) | Medium | ||
0148 | Sort List | C++ Python | O(nlogn) | O(logn) | Medium | ||
0164 | Maximum Gap | C++ Python | O(n) | O(n) | Hard | Tricky | |
0179 | Largest Number | C++ Python | O(nlogn) | O(1) | Medium | ||
0218 | The Skyline Problem | C++ Python | O(nlogn) | O(n) | Hard | Sort, BST | |
0252 | Meeting Rooms | C++ Python | O(nlogn) | O(n) | Easy | π | |
0253 | Meeting Rooms II | C++ Python | O(nlogn) | O(n) | Medium | π | |
0274 | H-Index | C++ Python | O(n) | O(n) | Medium | Counting Sort | |
0280 | Wiggle Sort | C++ Python | O(n) | O(1) | Medium | π | |
0324 | Wiggle Sort II | C++ Python | O(n) on average | O(1) | Medium | variant of Sort Colors | Tri Partition |
0347 | Top K Frequent Elements | C++ Python | O(n) | O(n) | Medium | Quick Select, Heap, Bucket Sort | |
0406 | Queue Reconstruction by Height | C++ Python | O(n * sqrt(n)) | O(n) | Medium | Tricky | |
0451 | Sort Characters By Frequency | C++ Python | O(n) | O(n) | Medium | ||
0692 | Top K Frequent Words | C++ Python | O(n + klogk) on average | O(n) | Medium | Quick Select, Heap, Bucket Sort | |
0912 | Sort an Array | C++ Python | O(nlogn) | O(n) | Medium | Merge Sort, Quick Sort | |
0937 | Reorder Log Files | C++ Python | O(nlogn * l) | O(l) | Easy | ||
0969 | Pancake Sorting | C++ Python | O(n^2) | O(l) | Medium | ||
0973 | K Closest Points to Origin | C++ Python | O(n) on average | O(1) | Easy | Quick Select, Heap | |
0976 | Largest Perimeter Triangle | C++ Python | O(nlogn) | O(1) | Easy | ||
1054 | Distant Barcodes | C++ Python | O(klogk) | O(k) | Medium | variant of Rearrange String k Distance Apart |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0220 | Contains Duplicate III | C++ Python | O(nlogk) | O(k) | Medium | ||
0230 | Kth Smallest Element in a BST | C++ Python | O(max(h, k)) | O(min(h, k)) | Medium | ||
0235 | Lowest Common Ancestor of a Binary Search Tree | C++ Python | O(h) | O(1) | Easy | EPI | |
0270 | Closest Binary Search Tree Value | C++ Python | O(h) | O(1) | Easy | π | |
0285 | Inorder Successor in BST | C++ Python | O(h) | O(1) | Medium | π | |
0352 | Data Stream as Disjoint Intervals | C++ Python | O(logn) | O(n) | Hard | ||
0449 | Serialize and Deserialize BST | C++ Python | O(n) | O(h) | Medium | ||
0450 | Delete Node in a BST | C++ Python | O(h) | O(h) | Medium | ||
0530 | Minimum Absolute Difference in BST | C++ Python | O(n) | O(h) | Easy | ||
0776 | Split BST | C++ Python | O(n) | O(h) | Medium | π | |
0783 | Minimum Distance Between BST Nodes | C++ Python | O(n) | O(h) | Easy | ||
0510 | Inorder Successor in BST II | C++ Python | O(h) | O(1) | Medium | π |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0102 | Binary Tree Level Order Traversal | C++ Python | O(n) | O(n) | Easy | ||
0107 | Binary Tree Level Order Traversal II | C++ Python | O(n) | O(n) | Easy | ||
0103 | Binary Tree Zigzag Level Order Traversal | Python | O(n) | O(n) | Medium | ||
0117 | Populating Next Right Pointers in Each Node II | Python | O(n) | O(1) | Hard | ||
0127 | Word Ladder | Python | O(n * d) | O(d) | Medium | ||
0130 | Surrounded Regions | C++ Python | O(m * n) | O(m + n) | Medium | ||
0133 | Clone Graph | Python | O(n) | O(n) | Medium | ||
0207 | Course Schedule | Python | O(|V| + |E|) | O(|E|) | Medium | Topological Sort | |
0210 | Course Schedule II | Python | O(|V| + |E|) | O(|E|) | Medium | Topological Sort | |
0261 | Graph Valid Tree | C++ Python | O(|V| + |E|) | O(|V| + |E|) | Medium | π | |
0269 | Alien Dictionary | C++ Python | O(n) | O(1) | Hard | π | Topological Sort, BFS, DFS |
0286 | Walls and Gates | C++ Python | O(m * n) | O(g) | Medium | π | |
0310 | Minimum Height Trees | C++ Python | O(n) | O(n) | Medium | ||
0317 | Shortest Distance from All Buildings | C++ Python | O(k * m * n) | O(m * n) | Hard | π | |
0433 | Minimum Genetic Mutation | C++ Python | O(n * b) | O(b) | Medium | ||
0444 | Sequence Reconstruction | C++ Python | O(n * s) | O(n) | Medium | π | Topological Sort |
0490 | The Maze | C++ Python | O(max(r, c) * w) | O(w) | Medium | ||
0499 | The Maze III | C++ Python | O(max(r, c) * wlogw) | O(w^2) | Hard | ||
0505 | The Maze II | C++ Python | O(max(r, c) * wlogw) | O(w) | Medium | ||
0542 | 01 Matrix | C++ Python | O(m * n) | O(m * n) | Medium | DP | |
0666 | Path Sum IV | C++ Python | O(n) | O(w) | Medium | π | Topological Sort |
0675 | Cut Off Trees for Golf Event | C++ Python | O(t * m * n) | O(m * n) | Hard | A* Search Algorithm |
|
0742 | Closest Leaf in a Binary Tree | C++ Python | O(n) | O(n) | Medium | ||
0743 | Network Delay Time | C++ Python | O(|E| * log|V|) | O(|E|) | Medium | Dijkstra's algorithm |
|
0752 | Open the Lock | C++ Python | O(k * n^k + d) | O(k * n^k + d) | Medium | ||
0773 | Sliding Puzzle | C++ Python | O((m * n) * (m * n)!) | O((m * n) * (m * n)!) | Hard | A* Search Algorithm |
|
0787 | Cheapest Flights Within K Stops | C++ Python | O(|E| * log|V|) | O(|E|) | Medium | Dijkstra's algorithm |
|
0815 | Bus Routes | C++ Python | O(|E| + |V|) | O(|E| + |V|) | Hard | ||
0854 | K-Similar Strings | C++ Python | O(n * n!/(c_a!*...*c_z!)) | O(n * n!/(c_a!*...*c_z!)) | Hard | ||
0865 | Shortest Path to Get All Keys | C++ Python | O(k * r * c + k^3*2^k) | O(k*2^k) | Hard | Dijkstra's algorithm |
|
0882 | Reachable Nodes In Subdivided Graph | C++ Python | O(|E| * log|V|) | O(|E|) | Hard | Dijkstra's algorithm |
|
0886 | Possible Bipartition | C++ Python | O(|V| + |E|) | O(|V| + |E|) | Medium | ||
0934 | Shortest Bridge | C++ Python | O(n^2) | O(n^2) | Medium | BFS, DFS | |
0967 | Numbers With Same Consecutive Differences | C++ Python | O(2^n) | O(2^n) | Medium | ||
0994 | Rotting Oranges | C++ Python | O(m * n) | O(m * n) | Easy | ||
1034 | Coloring A Border | C++ Python | O(m * n) | O(m + n) | Medium | ||
1036 | Escape a Large Maze | C++ Python | O(n^2) | O(n) | Hard |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0112 | Path Sum | Python | O(n) | O(h) | Easy | ||
0113 | Path Sum II | Python | O(n) | O(h) | Medium | ||
0199 | Binary Tree Right Side View | Python | O(n) | O(h) | Medium | ||
0200 | Number of Islands | Python | O(m * n) | O(m * n) | Medium | ||
0236 | Lowest Common Ancestor of a Binary Tree | C++ Python | O(n) | O(h) | Medium | EPI | |
0247 | Strobogrammatic Number II | C++ Python | O(n^2 * 5^(n/2)) | O(n) | Medium | π | |
0250 | Count Univalue Subtrees | C++ Python | O(n) | O(h) | Medium | π | |
0257 | Binary Tree Paths | C++ Python | O(n * h) | O(h) | Easy | ||
0282 | Expression Add Operators | C++ Python | O(4^n) | O(n) | Hard | ||
0301 | Remove Invalid Parentheses | C++ Python | O(C(n, c)) | O(c) | Hard | ||
0329 | Longest Increasing Path in a Matrix | C++ Python | O(m * n) | O(m * n) | Hard | ||
0332 | Reconstruct Itinerary | C++ Python | O(t! / (n1! * n2! * ... nk!)) | O(t) | Medium | ||
0339 | Nested List Weight Sum | C++ Python | O(n) | O(h) | Easy | π | |
0364 | Nested List Weight Sum II | C++ Python | O(n) | O(h) | Medium | π | |
0366 | Find Leaves of Binary Tree | C++ Python | O(n) | O(h) | Medium | π | |
0399 | Evaluate Division | C++ Python | O(q * |V|!) | O(e) | Medium | ||
0417 | Pacific Atlantic Water Flow | C++ Python | O(m * n) | O(m * n) | Medium | ||
0440 | K-th Smallest in Lexicographical Order | C++ Python | O(logn) | O(logn) | Hard | ||
0464 | Can I Win | C++ Python | O(n!) | O(n) | Medium | ||
0515 | Find Largest Value in Each Tree Row | C++ Python | O(n) | O(h) | Medium | ||
0547 | Friend Circles | C++ Python | O(n^2) | O(n) | Medium | Union Find | |
0582 | Kill Process | C++ Python | O(n) | O(n) | Medium | π | DFS, BFS |
0638 | Shopping Offers | C++ Python | O(n * 2^n) | O(n) | Medium | ||
0690 | Employee Importance | C++ Python | O(n) | O(h) | Easy | DFS, BFS | |
0694 | Number of Distinct Islands | C++ Python | O(m * n) | O(m * n) | Medium | π | |
0695 | Max Area of Island | C++ Python | O(m * n) | O(m * n) | Easy | ||
0711 | Number of Distinct Islands II | C++ Python | O((m * n) * log(m * n)) | O(m * n) | Hard | π | Hash |
0733 | Max Area of Island | C++ Python | O(m * n) | O(m * n) | Easy | ||
0749 | Contain Virus | C++ Python | O((m * n)^(4/3)) | O(m * n) | Hard | Simulation | |
0753 | Cracking the Safe | C++ Python | O(k^n) | O(k^n) | Hard | de Bruijn sequences , Lyndon word |
|
0756 | Pyramid Transition Matrix | C++ Python | O(a^b) | O(a^b) | Medium | ||
0785 | Is Graph Bipartite? | C++ Python | O(|V| + |E|) | O(|V|) | Medium | ||
0797 | All Paths From Source to Target | C++ Python | O(p + r * n) | O(n) | Medium | ||
0802 | Find Eventual Safe States | C++ Python | O(|V| + |E|) | O(|V|) | Medium | ||
0827 | Making A Large Island | C++ Python | O(n^2) | O(n^2) | Hard | ||
0834 | Sum of Distances in Tree | C++ Python | O(n) | O(n) | Hard | ||
0841 | Keys and Rooms | C++ Python | O(n!) | O(n) | Medium | ||
0851 | Loud and Rich | C++ Python | O(q + r) | O(q + r) | Medium | ||
0913 | Cat and Mouse | C++ Python | O(n^3) | O(n^2) | Hard | ||
1020 | Number of Enclaves | C++ Python | O(m * n) | O(m * n) | Medium |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0017 | Letter Combinations of a Phone Number | Python | O(n * 4^n) | O(n) | Medium | ||
0022 | Generate Parentheses | Python | O(4^n / n^(3/2)) | O(n) | Medium | ||
0037 | Sudoku Solver | Python | O((9!)^9) | O(1) | Hard | ||
0039 | Combination Sum | Python | O(k * n^k) | O(k) | Medium | ||
0040 | Combination Sum II | Python | O(k * C(n, k)) | O(k) | Medium | ||
0046 | Permutations | Python | O(n * n!) | O(n) | Medium | ||
0047 | Permutations II | Python | O(n * n!) | O(n) | Medium | ||
0051 | N-Queens | Python | O(n!) | O(n) | Hard | ||
0052 | N-Queens-II | Python | O(n!) | O(n) | Hard | ||
0077 | Combinations | Python | O(O(k * C(n, k))) | O(k) | Medium | ||
0079 | Word Search | Python | O(m * n * l) | O(l) | Medium | ||
0093 | Restore IP Addresses | Python | O(1) | O(1) | Medium | ||
0078 | Subsets | C++ Python | O(n * 2^n) | O(1) | Medium | ||
0090 | Subsets II | C++ Python | O(n * 2^n) | O(1) | Medium | ||
0126 | Word Ladder II | Python | O(n * d) | O(d) | Hard | ||
0131 | Palindrome Partitioning | Python | O(n^2) ~ O(2^n) | O(n^2) | Medium | ||
0140 | Word Break II | C++ Python | O(n * l^2 + n * r) | O(n^2) | Hard | ||
0212 | Word Search II | C++ Python | O(m * n * l) | O(l) | Hard | LintCode | Trie, DFS |
0216 | Combination Sum III | C++ Python | O(k * C(n, k)) | O(k) | Medium | ||
0254 | Factor Combinations | C++ Python | O(nlogn) | O(logn) | Medium | π | |
0267 | Palindrome Permutation II | C++ Python | O(n * n!) | O(n) | Medium | π | |
0291 | Word Pattern II | C++ Python | O(n * C(n - 1, c - 1)) | O(n + c) | Hard | π | |
0294 | Flip Game II | C++ Python | O(n + c^2) | O(c) | Medium | π | DP, Hash |
0320 | Generalized Abbreviation | C++ Python | O(n * 2^n) | O(n) | Medium | π | |
0425 | Word Squares | C++ Python | O(n^2 * n!) | O(n^2) | Hard | π | |
0526 | Beautiful Arrangement | C++ Python | O(n!) | O(n) | Medium | ||
0676 | Implement Magic Dictionary | C++ Python | O(n) | O(d) | Medium | Trie, DFS | |
0679 | 24 Game | C++ Python | O(1) | O(1) | Hard | DFS | |
0698 | Partition to K Equal Sum Subsets | C++ Python | O(n * 2^n) | O(2^n) | Medium | DFS, DP, Memoization | |
0718 | Maximum Length of Repeated Subarray | C++ Python | O(m * n) | O(min(m, n)) | Medium | DP, Hash, Binary Search | |
0784 | Letter Case Permutation | C++ Python | O(n * 2^n) | O(1) | Easy | ||
0996 | Number of Squareful Arrays | C++ Python | O(n!) | O(n^2) | Hard |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0010 | Regular Expression Matching | Python | O(m * n) | O(n) | Hard | ||
0044 | Wildcard Matching | Python | O(m * n) | O(1) | Hard | Greedy | |
0053 | Maximum Subarray | C++ Python | O(n) | O(1) | Medium | ||
0062 | Unique Paths | Python | O(m * n) | O(m + n) | Medium | ||
0063 | Unique Paths II | Python | O(m * n) | O(m + n) | Medium | ||
0064 | Minimum Path Sum | Python | O(m * n) | O(m + n) | Medium | ||
0070 | Climbing Stairs | C++ Python | O(logn) | O(1) | Easy | Matrix Exponentiation | |
0072 | Edit Distance | Python | O(m * n) | O(m + n) | Hard | ||
0087 | Scramble String | Python | O(n^4) | O(n^3) | Hard | ||
0091 | Decode Ways | C++ Python | O(n) | O(1) | Medium | ||
0096 | Unique Binary Search Trees | Python | O(n) | O(1) | Medium | Math | |
0097 | Interleaving String | Python | O(m * n) | O(m + n) | Hard | ||
0115 | Distinct Subsequences | Python | O(n^2) | O(n) | Hard | ||
0120 | Triangle | Python | O(m * n) | O(n) | Medium | ||
0123 | Best Time to Buy and Sell Stock III | Python | O(n) | O(1) | Hard | ||
0132 | Palindrome Partitioning II | Python | O(n^2) | O(n^2) | Hard | ||
0139 | Word Break | C++ Python | O(n * l^2) | O(n) | Medium | ||
0152 | Maximum Product Subarray | Python | O(n) | O(1) | Medium | ||
0174 | Dungeon Game | Python | O(m * n) | O(m + n) | Hard | ||
0188 | Best Time to Buy and Sell Stock IV | Python | O(k * n) | O(k) | Hard | ||
0198 | House Robber | C++ Python | O(n) | O(1) | Easy | ||
0213 | House Robber II | C++ Python | O(n) | O(1) | Medium | ||
0221 | Maximal Square | C++ Python | O(n^2) | O(n) | Medium | EPI | |
0256 | Paint House | C++ Python | O(n) | O(1) | Medium | π | |
0265 | Paint House II | C++ Python | O(n * k) | O(k) | Hard | π | |
0276 | Paint Fence | C++ Python | O(n) | O(1) | Easy | π | |
0279 | Perfect Squares | C++ Python | O(n * sqrt(n)) | O(n) | Medium | Hash | |
0303 | Range Sum Query - Immutable | C++ Python | ctor: O(n), lookup: O(1) | O(n) | Easy | ||
0304 | Range Sum Query 2D - Immutable | C++ Python | ctor: O(m * n), lookup: O(1) | O(m * n) | Medium | ||
0309 | Best Time to Buy and Sell Stock with Cooldown | C++ Python | O(n) | O(1) | Medium | ||
0312 | Burst Balloons | C++ Python | O(n^3) | O(n^2) | Hard | ||
0322 | Coin Change | C++ Python | O(n * k) | O(k) | Medium | ||
0351 | Android Unlock Patterns | C++ Python | O(9^2 * 2^9) | O(9 * 2^9) | Medium | π | Backtracking |
0357 | Count Numbers with Unique Digits | C++ Python | O(n) | O(1) | Medium | Backtracking, Math | |
0361 | Bomb Enemy | C++ Python | O(m * n) | O(m * n) | Medium | π | |
0368 | Largest Divisible Subset | C++ Python | O(n^2) | O(n) | Medium | ||
0375 | Guess Number Higher or Lower II | C++ Python | O(n^2) | O(n^2) | Medium | ||
0377 | Combination Sum IV | C++ Python | O(nlogn + n * t) | O(t) | Medium | ||
0403 | Frog Jump | C++ Python | O(n) | O(n) ~ O(n^2) | Hard | ||
0416 | Partition Equal Subset Sum | C++ Python | O(n * s) | O(s) | Medium | ||
0418 | Sentence Screen Fitting | C++ Python | O(r + n * c) | O(n) | Medium | π | |
0446 | Arithmetic Slices II - Subsequence | C++ Python | O(n^2) | O(n * d) | Hard | ||
0465 | Optimal Account Balancing | C++ Python | O(n * 2^n) | O(2^n) | Hard | π | |
0466 | Count The Repetitions | C++ Python | O(s1 * min(s2, n1)) | O(s2) | Hard | ||
0467 | Unique Substrings in Wraparound String | C++ Python | O(n) | O(1) | Medium | ||
0471 | Encode String with Shortest Length | C++ Python | O(n^3) on average | O(n^2) | Medium | π | |
0472 | Concatenated Words | C++ Python | O(n * l^2) | O(n * l) | Medium | ||
0474 | Ones and Zeroes | C++ Python | O(s * m * n) | O(m * n) | Medium | ||
0486 | Predict the Winner | C++ Python | O(n^2) | O(n) | Medium | ||
0509 | Fibonacci Number | C++ Python | O(logn) | O(1) | Easy | variant of Climbing Stairs | Matrix Exponentiation |
0514 | Freedom Trail | C++ Python | O(k) ~ O(k * r^2) | O(r) | Hard | ||
0516 | Longest Palindromic Subsequence | C++ Python | O(n^2) | O(n) | Medium | ||
0546 | Remove Boxes | C++ Python | O(n^3) ~ O(n^4) | O(n^3) | Hard | ||
0552 | Student Attendance Record II | C++ Python | O(n) | O(1) | Hard | ||
0562 | Longest Line of Consecutive One in Matrix | C++ Python | O(m * n) | O(n) | Medium | π | |
0568 | Maximum Vacation Days | C++ Python | O(n^2 * k) | O(k) | Hard | π | |
0576 | Out of Boundary Paths | C++ Python | O(N * m * n) | O(m * n) | Medium | ||
0583 | Delete Operation for Two Strings | C++ Python | O(m * n) | O(n) | Medium | ||
0600 | Non-negative Integers without Consecutive Ones | C++ Python | O(1) | O(1) | Hard | ||
0629 | K Inverse Pairs Array | C++ Python | O(n * k) | O(k) | Hard | ||
0639 | Decode Ways II | C++ Python | O(n) | O(1) | Hard | ||
0650 | 2 Keys Keyboard | C++ Python | O(sqrt(n)) | O(1) | Medium | ||
0656 | Coin Path | C++ Python | O(n * B) | O(n) | Hard | π | |
0664 | Strange Printer | C++ Python | O(n^3) | O(n^2) | Hard | ||
0673 | Number of Longest Increasing Subsequence | C++ Python | O(n^2) | O(n) | Medium | ||
0688 | Knight Probability in Chessboard | C++ Python | O(k * n^2) | O(n^2) | Medium | ||
0689 | Maximum Sum of 3 Non-Overlapping Subarrays | C++ Python | O(n) | O(n) | Hard | ||
0691 | Stickers to Spell Word | C++ Python | O(T * S^T) | O(T * S^T) | Hard | Backtracking, Memoization | |
0712 | Minimum ASCII Delete Sum for Two Strings | C++ Python | O(m * n) | O(n) | Medium | ||
0714 | Best Time to Buy and Sell Stock with Transaction Fee | C++ Python | O(n) | O(1) | Medium | ||
0727 | Minimum Window Subsequence | C++ Python | O(s * t) | O(s) | Hard | π | |
0730 | Count Different Palindromic Subsequences | C++ Python | O(n^2) | O(n) | Hard | ||
0740 | Delete and Earn | C++ Python | O(n) | O(1) | Medium | ||
0741 | Cherry Pickup | C++ Python | O(n^3) | O(n^2) | Hard | ||
0746 | Min Cost Climbing Stairs | C++ Python | O(n) | O(1) | Easy | ||
0750 | Number Of Corner Rectangles | C++ Python | O(n * m^2) | O(n * m) | Medium | ||
0764 | Largest Plus Sign | C++ Python | O(n^2) | O(n^2) | Medium | ||
0788 | Rotated Digits | C++ Python | O(logn) | O(logn) | Easy | Memoization | |
0790 | Domino and Tromino Tiling | C++ Python | O(logn) | O(1) | Medium | Matrix Exponentiation | |
0799 | Champagne Tower | C++ Python | O(n^2) | O(n) | Medium | ||
0801 | Minimum Swaps To Make Sequences Increasing | C++ Python | O(n) | O(1) | Medium | ||
0805 | Split Array With Same Average | C++ Python | O(n^4) | O(n^3) | Hard | ||
0808 | Soup Servings | C++ Python | O(1) | O(1) | Medium | Memoization | |
0813 | Largest Sum of Averages | C++ Python | O(k * n^2) | O(n) | Medium | ||
0818 | Race Car | C++ Python | O(nlogn) | O(n) | Hard | ||
0823 | Binary Trees With Factors | C++ Python | O(n^2) | O(n) | Medium | ||
0837 | New 21 Game | C++ Python | O(n) | O(n) | Medium | ||
0838 | Push Dominoes | C++ Python | O(n) | O(n) | Medium | ||
0847 | Shortest Path Visiting All Nodes | C++ Python | O(n *2^n) | O(n * 2^n) | Hard | BFS | |
0877 | Stone Game | C++ Python | O(n^2) | O(n) | Medium | variant of Predict the Winner | |
0879 | Profitable Schemes | C++ Python | O(n * p * g) | O(p * g) | Hard | ||
0903 | Valid Permutations for DI Sequence | C++ Python | O(n^2) | O(n) | Hard | ||
0920 | Number of Music Playlists | C++ Python | O(n * l) | O(l) | Hard | ||
0926 | Flip String to Monotone Increasing | C++ Python | O(n) | O(1) | Medium | ||
0931 | Minimum Falling Path Sum | C++ Python | O(n^2) | O(1) | Medium | ||
0935 | Knight Dialer | C++ Python | O(logn) | O(1) | Medium | Matrix Exponentiation | |
0940 | Distinct Subsequences II | C++ Python | O(n) | O(1) | Hard | ||
0943 | Find the Shortest Superstring | C++ Python | O(n^2 * (l^2 + 2^n)) | O(n^2) | Hard | ||
0956 | Tallest Billboard | C++ Python | O(n * 3^(n/2)) | O(3^(n/2)) | Hard | ||
0960 | Delete Columns to Make Sorted III | C++ Python | O(n * l^2) | O(l) | Hard | ||
0964 | Least Operators to Express Number | C++ Python | O(logn / logx) | O(logn) | Hard | Math | |
0975 | Odd Even Jump | C++ Python | O(nlogn) | O(n) | Hard | Descending Stack, BST | |
0980 | Unique Paths III | C++ Python | O((m * n) * 2^(m * n)) | O((m * n) * 2^(m * n)) | Hard | ||
0983 | Minimum Cost For Tickets | C++ Python | O(n) | O(1) | Medium | ||
1000 | Minimum Cost to Merge Stones | C++ Python | O(n^3) | O(n^3) | Hard | Memoization | |
1027 | Longest Arithmetic Sequence | C++ Python | O(n^2) | O(n^2) | Medium | ||
1035 | Uncrossed Lines | C++ Python | O(m * n) | O(min(m, n)) | Medium | ||
1039 | Minimum Score Triangulation of Polygon | C++ Python | O(n^3) | O(n^2) | Medium | ||
1043 | Partition Array for Maximum Sum | C++ Python | O(n * k) | O(k) | Medium | ||
1048 | Longest String Chain | C++ Python | O(n * l^2) | O(n * l) | Medium | ||
1049 | Last Stone Weight II | C++ Python | O(2^n) | O(2^n) | Medium |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0011 | Container With Most Water | C++ Python | O(n) | O(1) | Medium | ||
0042 | Trapping Rain Water | C++ Python | O(n) | O(1) | Hard | Tricky | |
0045 | Jump Game II | Python | O(n) | O(1) | Hard | ||
0055 | Jump Game | Python | O(n) | O(1) | Medium | ||
0122 | Best Time to Buy and Sell Stock II | C++ Python | O(n) | O(1) | Easy | ||
0134 | Gas Station | Python | O(n) | O(1) | Medium | ||
0135 | Candy | C++ Python | O(n) | O(n) | Hard | ||
0316 | Remove Duplicate Letters | C++ Python | O(n) | O(k) | Hard | Ascending Stack | |
0321 | Create Maximum Number | C++ Python | O(k * (m + n + k)) ~ O(k * (m + n + k^2)) | O(m + n + k^2) | Hard | variant of Delete Digits | Greedy, DP |
0330 | Patching Array | C++ Python | O(s + logn) | O(1) | Hard | ||
0376 | Wiggle Subsequence | C++ Python | O(n) | O(1) | Medium | ||
0392 | Is Subsequence | C++ Python | O(n) | O(1) | Medium | ||
0397 | Integer Replacement | C++ Python | O(n) | O(1) | Medium | Math | |
0402 | Remove K Digits | C++ Python | O(n) | O(n) | Medium | LintCode | |
0435 | Non-overlapping Intervals | C++ Python | O(nlogn) | O(1) | Medium | Line Sweep | |
0452 | Minimum Number of Arrows to Burst Balloons | C++ Python | O(nlogn) | O(1) | Medium | ||
0455 | Assign Cookies | C++ Python | O(nlogn) | O(1) | Easy | ||
0621 | Task Scheduler | C++ Python | O(n) | O(1) | Medium | ||
0630 | Course Schedule III | C++ Python | O(nlogn) | O(k) | Hard | ||
0646 | Maximum Length of Pair Chain | C++ Python | O(nlogn) | O(1) | Medium | variant of Non-overlapping Intervals | Line Sweep |
0649 | Dota2 Senate | C++ Python | O(n) | O(n) | Medium | ||
0659 | Split Array into Consecutive Subsequences | C++ Python | O(n) | O(1) | Medium | ||
0738 | Monotone Increasing Digits | C++ Python | O(1) | O(1) | Medium | ||
0757 | Set Intersection Size At Least Two | C++ Python | O(nlogn) | O(n) | Hard | ||
0759 | Employee Free Time | C++ Python | O(m * logn) | O(n) | Hard | ||
0763 | Partition Labels | C++ Python | O(n) | O(n) | Medium | ||
0767 | Reorganize String | C++ Python | O(n) | O(1) | Medium | ||
0798 | Smallest Rotation with Highest Score | C++ Python | O(n) | O(1) | Hard | ||
0843 | Guess the Word | C++ Python | O(n^2) | O(n) | Hard | MinMax | |
0861 | Score After Flipping Matrix | C++ Python | O(r * c) | O(1) | Medium | ||
0870 | Advantage Shuffle | C++ Python | O(nlogn) | O(n) | Medium | ||
0881 | Boats to Save People | C++ Python | O(nlogn) | O(n) | Medium | ||
0936 | Stamping The Sequence | C++ Python | O((n - m) * m) | O((n - m) * m) | Hard | ||
0948 | Bag of Tokens | C++ Python | O(nlogn) | O(1) | Medium | Two Pointers | |
0962 | Maximum Width Ramp | C++ Python | O(n) | O(n) | Medium | Descending Stack | |
0968 | Binary Tree Cameras | C++ Python | O(n) | O(h) | Hard | DFS | |
0984 | String Without AAA or BBB | C++ Python | O(a + b) | O(1) | Easy | ||
0991 | Broken Calculator | C++ Python | O(logn) | O(1) | Medium | ||
0995 | Minimum Number of K Consecutive Bit Flips | C++ Python | O(n) | O(1) | Hard | ||
1005 | Maximize Sum Of Array After K Negations | C++ Python | O(n) on average | O(1) | Easy | Quick Select | |
1024 | Video Stitching | C++ Python | O(nlogn) | O(1) | Medium | variant of Jump Game II | |
1029 | Two City Scheduling | C++ Python | O(n) on average | O(1) | Easy | Quick Select | |
1053 | Previous Permutation With One Swap | C++ Python | O(n) | O(1) | Medium |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0765 | Couples Holding Hands | C++ Python | O(n) | O(n) | Hard | ||
0924 | Minimize Malware Spread | C++ Python | O(n^2) | O(n) | Hard | Union Find | |
0928 | Minimize Malware Spread II | C++ Python | O(n^2) | O(n) | Hard | Union Find | |
0959 | Regions Cut By Slashes | C++ Python | O(n^2) | O(n^2) | Medium | Union Find | |
0990 | Satisfiability of Equality Equations | C++ Python | O(n) | O(1) | Medium | Union Find | |
1042 | Flower Planting With No Adjacent | C++ Python | O(n) | O(n) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0587 | Erect the Fence | C++ Python | O(nlogn) | O(n) | Hard | Monotone Chain |
|
0892 | Surface Area of 3D Shapes | C++ Python | O(n^2) | O(1) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0874 | Walking Robot Simulation | C++ Python | O(n + k) | O(k) | Easy |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0146 | LRU Cache | C++ Python | O(1) | O(k) | Hard | ||
0225 | Implement Stack using Queues | C++ Python | push: O(n), pop: O(1), top: O(1) | O(n) | Easy | ||
0284 | Peeking Iterator | C++ Python | O(1) | O(1) | Medium | ||
0348 | Design Tic-Tac-Toe | C++ Python | O(1) | O(n^2) | Medium | π | |
0353 | Design Snake Game | C++ Python | O(1) | O(s) | Medium | π | Deque |
0355 | Design Twitter | C++ Python | O(klogu) | O(t + f) | Medium | LintCode | Heap |
0359 | Logger Rate Limiter | C++ Python | O(1), amortized | O(k) | Easy | π | Deque |
0362 | Design Hit Counter | C++ Python | O(1), amortized | O(k) | Medium | π | Deque |
0379 | Design Phone Directory | C++ Python | O(1) | O(n) | Medium | π | |
0380 | Insert Delete GetRandom O(1) | C++ Python | O(1) | O(n) | Hard | ||
0381 | Insert Delete GetRandom O(1) - Duplicates allowed | C++ Python | O(1) | O(n) | Hard | ||
0432 | All O`one Data Structure | C++ Python | O(1) | O(n) | Hard | ||
0460 | LFU Cache | C++ Python | O(1) | O(k) | Hard | ||
0535 | Encode and Decode TinyURL | C++ Python | O(1) | O(n) | Medium | ||
0588 | Design In-Memory File System | C++ Python | ls: O(l + klogk) mkdir: O(l) addContentToFile: O(l + c) readContentFromFile: O(l + c) |
O(n + s) | Hard | π | |
0604 | Design Compressed String Iterator | C++ Python | O(1) | O(1) | Easy | π | |
0631 | Design Excel Sum Formula | C++ Python | set: O((r * c)^2) get: O(1) sum: O((r * c)^2) |
O(r * c) | Hard | π | |
0635 | Design Log Storage System | C++ Python | put: O(1) retrieve: O(n + dlogd) |
O(n) | Medium | π | |
0642 | Design Search Autocomplete System | C++ Python | O(p^2) | O(p * t + s) | Hard | π | |
0715 | Range Module | C++ Python | add: O(n) remove: O(n) query: O(logn) |
O(n) | Hard | ||
0716 | Max Stack | C++ Python | push: O(logn) pop: O(logn) popMax: O(logn) top: O(1) peekMax: O(1) |
O(n) | Easy | ||
0745 | Prefix and Suffix Search | C++ Python | ctor: O(w * l^2) search : O(p + s) |
O(t) | Hard | Trie | |
0900 | RLE Iterator | C++ Python | O(n) | O(1) | Medium |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0175 | Combine Two Tables | MySQL | O(m + n) | O(m + n) | Easy | ||
0176 | Second Highest Salary | MySQL | O(n) | O(1) | Easy | ||
0177 | Nth Highest Salary | MySQL | O(n^2) | O(n) | Medium | ||
0178 | Rank Scores | MySQL | O(n^2) | O(n) | Medium | ||
0180 | Consecutive Numbers | MySQL | O(n) | O(n) | Medium | ||
0181 | Employees Earning More Than Their Managers | MySQL | O(n^2) | O(1) | Easy | ||
0182 | Duplicate Emails | MySQL | O(n^2) | O(n) | Easy | ||
0183 | Customers Who Never Order | MySQL | O(n^2) | O(1) | Easy | ||
0184 | Department Highest Salary | MySQL | O(n^2) | O(n) | Medium | ||
0185 | Department Top Three Salaries | MySQL | O(n^2) | O(n) | Hard | ||
0196 | Delete Duplicate Emails | MySQL | O(n^2) | O(n) | Easy | ||
0197 | Rising Temperature | MySQL | O(n^2) | O(n) | Easy | ||
0262 | Trips and Users | MySQL | O((t * u) + tlogt) | O(t) | Hard | ||
1045 | Customers Who Bought All Products | MySQL | O(n + k) | O(n + k) | Medium | π | |
1050 | Actors and Directors Who Cooperated At Least Three Times | MySQL | O(n) | O(n) | Easy | π |
# | Title | Solution | Time | Space | Difficulty | Tag | Note |
---|---|---|---|---|---|---|---|
0192 | Word Frequency | Shell | O(n) | O(k) | Medium | ||
0193 | Valid Phone Numbers | Shell | O(n) | O(1) | Easy | ||
0194 | Transpose File | Shell | O(n^2) | O(n^2) | Medium | ||
0195 | Tenth Line | Shell | O(n) | O(1) | Easy |