Special thanks to QMZiT
This is practise repo of RMIT 2019 Algorithm Analysis.
Hands-on training on real coding interview questions, for fun (-:
- ⏱ How to ask question
✈️ Where to ask question- 👨💻👩💻 Am I asking stupid question ?
- There is no stupid question, if you think something is not clear, ask away in where to ask question.
- HTML Standard. HTML Spec
- Java Style Guide. Google Java Guide
- Swift Style Guide. Google Swift Guide
- Array
- String
- Linked List
- Stack
- Tree
- Dynamic programming
- Depth-first search
- Math
- Search
- Sort
- Union Find
Title | Solution | Difficulty | Time | Space |
---|---|---|---|---|
Reverse Linked List | Java, Swift | Easy | O(n) | O(1) |
Palindrome Linked List | Java, Swift | Easy | O(n) | O(1) |
Reverse Nodes In k-Groups | Java, Swift | Hard | O(n) | O(1) |
Partition List | Java, Swift | Medium | O(n) | O(1) |
Reverse Linked List II | Java, Swift | Easy | O(n) | O(1) |
Swap Two Nodes In Linked List | Java, Swift | Easy | O(n) | O(1) |
Merge Two Sorted Lists | Java, Swift | Easy | O(n) | O(1) |
Swap Nodes in Pairs | Java, Swift | Medium | O(n) | O(1) |
Remove Linked List Elements | Java, Swift | Easy | O(n) | O(1) |
Remove Duplicates from Sorted List | Swift | Easy | O(n) | O(1) |
Remove Duplicates from Sorted List II | Swift | Medium | O(n) | O(1) |
Remove Nth Node From End of List | Swift | Easy | O(n) | O(1) |
Odd Even Linked List | Swift | Medium | O(n) | O(1) |
Rotate List | Java, Swift | Medium | O(n) | O(1) |
Reorder List | Java, Swift | Medium | O(n) | O(1) |
Copy List With Random Pointer | Java, Swift | Medium | O(n) | O(1) |
Linked List Cycle | Java, Swift | Easy | O(n) | O(1) |
Sort List | Java, Swift | Medium | O(nlogn) | O(1) |
Merge k Sorted Lists | Swift | Hard | O(mlogn) | O(1) |
Title | Solution | Difficulty | Time | Space |
---|---|---|---|---|
Valid Parentheses | Java, Swift | Easy | O(n) | O(n) |
Longest Valid Parentheses | Swift | Hard | O(n) | O(n) |
Evaluate Reverse Polish Notation | Swift | Medium | O(n) | O(n) |
Simplify Path | Swift | Medium | O(n) | O(n) |
Remove K Digits | Swift | Medium | O(n) | O(n) |
Ternary Expression Parser | Swift | Medium | O(n) | O(n) |
Binary Tree Preorder Traversal | Swift | Medium | O(n) | O(n) |
Binary Tree Inorder Traversal | Swift | Medium | O(n) | O(n) |
Binary Tree Postorder Traversal | Swift | Hard | O(n) | O(n) |
Title | Solution | Difficulty | Time | Space | Docs |
---|---|---|---|---|---|
Heap | Java, Swift | Easy | O(h) | O(n) | Docs |
AVL Tree | Java, Swift | Easy | O(h) | O(n) | Docs |
Title | Solution | Difficulty | Time | Space | Docs |
---|---|---|---|---|---|
Depth First Search | Java, Swift | Easy | N/A | N/A | Docs |
Binary Search | Java, Swift | Easy | O(logn) | O(1) | |
Binary Search Tree | Java, Swift | Easy | O(logn) | O(1) | Docs |
First Position of Target | Java, Swift | Easy | O(logn) | O(1) | |
Last Position of Target | Java, Swift | Easy | O(logn) | O(1) | |
First Bad Version | Java, Swift | Easy | O(logn) | O(1) |
Title | Solution | Difficulty | Time | Space | Docs |
---|---|---|---|---|---|
Merge Sort | Java, Swift | Easy | O(nlogn) | O(n) | Docs |
Quick Sort | Java, Swift | Easy | O(nlogn) | O(1) | Docs |
Selection Sort | Java, Swift | Easy | O(n^2) | O(1) | Docs |
Insertion Sort | Java, Swift | Easy | O(n^2) | O(1) | Docs |