JavaScript required
We’re sorry, but Coda doesn’t work properly without JavaScript enabled.
Skip to content
Gallery
Algoschool
Algocircle
More
Share
Explore
Algocircle
Level 1
BST Problems
Arrays problems
Stack problems
Two pointers problems
Heap problems
DP problems
DSU problems
Graphs problems
Trie problems
Sliding window problems
Binary Search problems
Misc problems
Objective
: learn how to pass coding interviews
Timing
: 3 month, 2 lessons in a week = 12 lessons + homework
Lectures
Lectures
Time/Space Complexity + Hashmaps
Two Pointers
Sliding window
Binary search
Linked list
Stacks
Binary tree (pre-order, in-order, post-order traversals)
BST
Backtracking
Heap
Trie
DP (Introduction)
Union-Find (DSU)
Graphs
Sorting
May 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Jun 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Jul 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Aug 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sep 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Oct 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Nov 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Dec 2024
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Month
Today
Fit
Time / Space Complexity, Hashmaps
@
Daria Alekseenko
Complexity Levels: Big O, Omega, Theta
Time/Space Complexity Types: O(1), O(logN), O(N), O(NlogN), O(N^N), O(N!)
Hashmaps implementation and usage
https://leetcode.com/problems/two-sum/
https://leetcode.com/problems/jewels-and-stones/
https://leetcode.com/problems/string-compression/
Two pointers
@
Daria Alekseenko
Two pointers technique
https://leetcode.com/problems/two-sum/
https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/
https://leetcode.com/problems/contains-duplicate/
https://leetcode.com/problems/remove-duplicates-from-sorted-array/
- много дизлайков
https://leetcode.com/problems/merge-sorted-array/
- много дизлайков
https://leetcode.com/problems/find-the-duplicate-number/
https://leetcode.com/problems/squares-of-a-sorted-array/
https://leetcode.com/problems/sort-colors/
https://leetcode.com/problems/3sum/
https://leetcode.com/problems/contains-duplicate/
https://leetcode.com/problems/4sum/
https://leetcode.com/problems/trapping-rain-water/
Sliding window
@
Daria Alekseenko
Static/Dynamic window
Sliding window technique
https://leetcode.com/problems/longest-substring-with-at-most-two-distinct-characters/
https://leetcode.com/problems/subarray-sum-equals-k/solution/
https://leetcode.com/problems/longest-substring-without-repeating-characters/
https://leetcode.com/problems/maximum-average-subarray-i/
Linked list
@
Дмитрий Петров
Linked list construction
Iteration over lined list
Simple operations
Reverse linked list
Slow/Fast pointer
Floyd cycle finding algorithm
Find entrance into cycle
https://leetcode.com/problems/reverse-linked-list/
https://leetcode.com/problems/middle-of-the-linked-list/
(Fast-Slow pointers)
https://leetcode.com/problems/linked-list-cycle/
(Fast-Slow pointers)
https://leetcode.com/problems/linked-list-cycle-ii/
https://leetcode.com/problems/rotate-list/
https://leetcode.com/problems/add-two-numbers/
https://leetcode.com/problems/palindrome-linked-list/
https://leetcode.com/problems/find-the-duplicate-number/
Stacks
@
Daria Alekseenko
Stack implementation using array
Stack implementation using linked list
https://leetcode.com/problems/valid-parentheses/
https://leetcode.com/problems/min-stack/
https://leetcode.com/problems/decode-string/
https://leetcode.com/problems/implement-queue-using-stacks/
https://leetcode.com/problems/evaluate-reverse-polish-notation/
https://leetcode.com/problems/simplify-path/
https://leetcode.com/problems/basic-calculator/
Binary search
@
Alexey Yakim
Binary search implementation
Open/Closed range
Integer overflow
Binary search in matrix
https://leetcode.com/problems/binary-search/
https://leetcode.com/problems/search-insert-position/
https://leetcode.com/problems/search-in-rotated-sorted-array/
https://leetcode.com/problems/search-in-rotated-sorted-array-ii/
https://leetcode.com/problems/search-a-2d-matrix/
https://leetcode.com/problems/search-a-2d-matrix-ii/
Binary tree (pre-order, in-order, post-order traversals)
@
Roman
Binary tree implementation
DFS using recursion
Pre-order, In-order, Post-order travestal
DFS using stack
BFS
https://leetcode.com/problems/invert-binary-tree/
https://leetcode.com/problems/merge-two-binary-trees/
https://leetcode.com/problems/sum-of-root-to-leaf-binary-numbers/
https://leetcode.com/problems/average-of-levels-in-binary-tree/
https://leetcode.com/problems/symmetric-tree/
https://leetcode.com/problems/maximum-depth-of-binary-tree/
https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/
https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/
https://leetcode.com/problems/binary-tree-maximum-path-sum/
BST
@
Roman
BST implementation
https://leetcode.com/problems/balance-a-binary-search-tree/
https://leetcode.com/problems/kth-smallest-element-in-a-bst/
Backtracking
@
Daria Alekseenko
Backtracking idea
https://leetcode.com/problems/permutations/
https://leetcode.com/problems/letter-combinations-of-a-phone-number/
https://leetcode.com/problems/word-search/
https://leetcode.com/problems/decode-ways/
https://leetcode.com/problems/sudoku-solver/
https://leetcode.com/problems/regular-expression-matching/
https://leetcode.com/problems/n-queens/
Heaps
@
Roman
Heap implementation
Heapsort
https://leetcode.com/problems/kth-largest-element-in-a-stream/
https://leetcode.com/problems/kth-largest-element-in-an-array/
(Heap)
https://leetcode.com/problems/k-closest-points-to-origin/
(Heap)
https://leetcode.com/problems/merge-k-sorted-lists/
Tries
@
Roman
Trie implementation
https://leetcode.com/problems/implement-trie-prefix-tree/
(Trie)
https://leetcode.com/problems/top-k-frequent-words/
(Trie + Heap)
https://leetcode.com/problems/design-search-autocomplete-system/
(Trie + Heap)
https://leetcode.com/problems/word-search-ii/
(Trie + Backtracking)
DP (Introduction)
@
Daria Alekseenko
Fibonacci example
1d dp
2d dp
Knapsack problem
String dp
https://leetcode.com/problems/unique-paths/
https://leetcode.com/problems/unique-paths-ii/
https://leetcode.com/problems/minimum-path-sum/
https://leetcode.com/problems/house-robber/
https://leetcode.com/problems/climbing-stairs/
https://leetcode.com/problems/edit-distance/
https://leetcode.com/problems/longest-palindromic-substring/
https://leetcode.com/problems/decode-ways/
https://leetcode.com/problems/coin-change/
https://leetcode.com/problems/coin-change-2/
https://leetcode.com/problems/maximal-square/solution/
Union-Find (DSU)
@
Дмитрий Петров
Naive implementation
Rank heuristic
Path compaction
https://leetcode.com/problems/number-of-islands/
(Union-Find)
https://leetcode.com/problems/accounts-merge/
(Union-Find)
https://leetcode.com/problems/longest-consecutive-sequence/
(Union-Find)
Graphs
@
Дмитрий Петров
Cyclic-Acyclic, Directed-Undirected, Weighed-Unweighted
Adjacency matrix
Adjacency list
DFS
BFS
Find cycle in undirected graph using dfs
Find cycle in directed graph using coloring
Naive topsort
Improved topsort
Dijkstra
https://leetcode.com/problems/keys-and-rooms
(DFS)
https://leetcode.com/problems/walls-and-gates/
(BFS)
https://leetcode.com/problems/number-of-islands/
(DFS)
https://leetcode.com/problems/course-schedule/
(Find cycle)
https://leetcode.com/problems/course-schedule-ii/
(Topsort)
https://leetcode.com/problems/path-with-maximum-probability/
(Dijkstra)
Sorting
@
Alexey Yakim
swap
инварианты цикла
n ^ 2
O(n) couting sort
Mergesort
Quicksort
https://leetcode.com/problems/sort-an-array/
https://leetcode.com/problems/merge-sorted-array/
https://leetcode.com/problems/sort-list/
Greedy Algorithms (Maybe)
Нужно посмотреть контент на эту темы
merge intervals, interval intercection
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
Ctrl
P
) instead.