Detailed Software Engineering preparation in multi-week intensive course.
All Solution in the Leetcode
directory include the worst case runtime and space complexity analysis.
- Arrays
- Basic math
- Simple string manipulation
- Simple bitwise manipulation
- Space and time complexity analysis Big-O analysis
- Union find
Coding exercises
Arrays:
- https://leetcode.com/problems/sort-array-by-parity
- https://leetcode.com/problems/transpose-matrix
- https://leetcode.com/problems/flipping-an-image
Basic math:
- https://leetcode.com/problems/self-dividing-numbers
- https://leetcode.com/problems/fizz-buzz
- https://leetcode.com/problems/plus-one
- https://leetcode.com/problems/excel-sheet-column-number
- https://leetcode.com/problems/power-of-two
Simple string manipulation:
- https://leetcode.com/problems/reverse-string
- https://leetcode.com/problems/detect-capital
- https://leetcode.com/problems/reverse-words-in-a-string-iii
- https://leetcode.com/problems/valid-palindrome
- https://leetcode.com/problems/reverse-vowels-of-a-string
- https://leetcode.com/problems/longest-common-prefix
Simple bitwise manipulation:
- https://leetcode.com/problems/number-complement
- https://leetcode.com/problems/hamming-distance/
- https://leetcode.com/problems/binary-gap
- https://leetcode.com/problems/single-number
Hashmaps and sets:
Union find:
- https://leetcode.com/problems/friend-circles
- https://leetcode.com/problems/number-of-islands
- https://leetcode.com/problems/surrounded-regions
- Hash maps
- Hash sets
- Multisets
- Tries
Coding exercises
Hash maps and sets
- https://leetcode.com/problems/jewels-and-stones
- https://leetcode.com/problems/unique-morse-code-words
- https://leetcode.com/problems/happy-number
- https://leetcode.com/problems/uncommon-words-from-two-sentences
- https://leetcode.com/problems/distribute-candies
- https://leetcode.com/problems/groups-of-special-equivalent-strings
- https://leetcode.com/problems/intersection-of-two-arrays
- https://leetcode.com/problems/valid-sudoku
- https://leetcode.com/problems/isomorphic-strings
- https://leetcode.com/problems/word-pattern
- https://leetcode.com/problems/design-hashmap
- https://leetcode.com/problems/design-hashset/
Multiset
- https://leetcode.com/problems/find-all-anagrams-in-a-string
- https://leetcode.com/problems/first-unique-character-in-a-string
- https://leetcode.com/problems/subdomain-visit-count
- https://leetcode.com/problems/find-the-difference
- https://leetcode.com/problems/most-common-word
- https://leetcode.com/problems/sort-characters-by-frequency
- https://leetcode.com/problems/set-mismatch
- https://leetcode.com/problems/number-of-atoms
Tries
- https://leetcode.com/problems/longest-word-in-dictionary
- https://leetcode.com/problems/implement-trie-prefix-tree
- https://leetcode.com/problems/word-search-ii
- Greedy algorithms
- Binary search
- Sorting
- Recursion and memoization
- Dynamic programming
Coding exercises
Greedy algorithms
- https://leetcode.com/problems/lemonade-change
- https://leetcode.com/problems/assign-cookies
- https://leetcode.com/problems/is-subsequence
- https://leetcode.com/problems/minimum-number-of-arrows-to-burst-balloons
- https://leetcode.com/problems/partition-labels
Binary search
- https://leetcode.com/problems/binary-search
- https://leetcode.com/problems/peak-index-in-a-mountain-array
Sorting
- https://leetcode.com/problems/valid-anagram
- https://leetcode.com/problems/array-partition-i
- https://leetcode.com/problems/merge-intervals
- https://leetcode.com/problems/find-all-anagrams-in-a-string
Simple recursion
Recursion and memoization
- https://leetcode.com/problems/best-time-to-buy-and-sell-stock
- https://leetcode.com/problems/edit-distance
- https://leetcode.com/problems/house-robber-ii
- https://leetcode.com/problems/regular-expression-matching/
Dynamic Programming (same problems but use dynamic programming now!)
- https://leetcode.com/problems/powx-n
- https://leetcode.com/problems/best-time-to-buy-and-sell-stock
- https://leetcode.com/problems/edit-distance
- https://leetcode.com/problems/house-robber-ii
- https://leetcode.com/problems/regular-expression-matching/
- Heaps
- Linked lists
- Stacks
- Queues
- Combinatorial generation
- Backtracking
Coding exercises
Linked lists
- https://leetcode.com/problems/reverse-linked-list
- https://leetcode.com/problems/reverse-linked-list-ii
- https://leetcode.com/problems/odd-even-linked-list
- https://leetcode.com/problems/intersection-of-two-linked-lists
- https://leetcode.com/problems/reverse-nodes-in-k-group
- https://leetcode.com/problems/lru-cache
Stacks
- https://leetcode.com/problems/baseball-game
- https://leetcode.com/problems/next-greater-element-i
- https://leetcode.com/problems/backspace-string-compare
- https://leetcode.com/problems/valid-parentheses
- https://leetcode.com/problems/score-of-parentheses
Queues
- https://leetcode.com/problems/implement-stack-using-queues/
- https://leetcode.com/problems/implement-queue-using-stacks/
- https://leetcode.com/problems/rotate-array
Heaps
- https://leetcode.com/problems/top-k-frequent-elements
- https://leetcode.com/problems/merge-k-sorted-lists
Combinatorial generation
- https://leetcode.com/problems/subsets
- https://leetcode.com/problems/permutations
- https://leetcode.com/problems/combinations
- https://leetcode.com/problems/generate-parentheses
- https://leetcode.com/problems/gray-code
- https://leetcode.com/problems/all-possible-full-binary-trees
Backtracking
- https://leetcode.com/problems/combination-sum
- https://leetcode.com/problems/partition-equal-subset-sum
- https://leetcode.com/problems/partition-to-k-equal-sum-subsets
- https://leetcode.com/problems/sudoku-solver
- Trees
- Graphs
Coding exercises
Trees
- https://leetcode.com/problems/n-ary-tree-postorder-traversal
- https://leetcode.com/problems/leaf-similar-trees
- https://leetcode.com/problems/same-tree
- https://leetcode.com/problems/sum-of-left-leaves
- https://leetcode.com/problems/diameter-of-binary-tree
- https://leetcode.com/problems/longest-univalue-path
- https://leetcode.com/problems/find-bottom-left-tree-value
Graphs
- https://leetcode.com/problems/course-schedule
- https://leetcode.com/problems/island-perimeter
- https://leetcode.com/problems/is-graph-bipartite
- https://leetcode.com/problems/word-search
Top Sort
- https://leetcode.com/problems/course-schedule-ii
- https://www.geeksforgeeks.org/given-sorted-dictionary-find-precedence-characters/
- https://leetcode.com/problems/longest-increasing-path-in-a-matrix
Forking Echo Server
Multithreaded Merge Sort
- I have no rights to the Wallbreakers logo and they are an exclusive property of Wallbreakers