a-grim-loth
Table of Contents:
cpp
Arrays
kth-smallest-or-subarray
kth-smallest-sum-subarray
largest-subarray-sum
move-all-0s-to-left-while-maintaining-order
reverse-array
Combinatorial-search
N-queens-puzzle
TSP-branch-and-bound
allow-n-people-in-2-power-n-way
anagram-of-the-given-string
backtracking
backtracking-template
construct-distinct-BST-1-to-n
construct-permutation-via-backtracking
construct-subsets-via-backtracking
constructing-all-paths-in-a-graph
forbidden-strings-and-length-n
k-partition-problem
mean-weight-cycle-of-a-graph
partition-2k-elements-into-two-kgroups
print-all-valid-n-pair-parentheses
remove-invalid-parenthesis
combinations
combination-of-multisets
combinations-every-element-appears-twice-distance-appearances-equal-value
expected-number-of-calls-to-rng-04-per-call-of-rng-07
list-k-element-subsets-of-n-items
permutations
1-million-permutations-and-subsets
derangement
kth-permutation-sequence
permutation
permute-a-string
print-all-subset-of-given-string
sudoku-solver
telephone-numbers-to-possible-words
Conjectures
Taxicab-Number
Dictionaries
ceaser-cipher-decrypt
dictionaries-implementation-benchmark
search-string-magazine-cutting
Dynamic-Programming
Longest-Increasing-subsequence
lis-decending
lis-nlogn
lis
Longest-common-subsequence
Lcs-basic
reducedspace
Max-sum-on-line
basic
basic
binomial-coefficient
climb-stairs
coin-change-variant-basket-balls-2
coin-change-variant-basket-balls
coin-change
fibonacci-sequence-cache-vs-computation
is-shuffle-of-two-strings
longest-common-subseqeunce
longest-common-substring
minimum-path-sum
professional-thief
substring-search
edit-distance
approximate-string-matching
poker-chips
number-problems
data-compression
divide-luggage
integer-partition-inclusion-exclusion
knapsack-problem-with-unique-elements
max-circular-subarray-sum
max-contiguous-sum
maximize-parentization
perfect-squares
rod-cutting
partition
integer-partition
without-rearrangement
shortest-common-supersequence
scs
subset-sum
coin-change
subset-sum
three-subset-sum
tree
optimal-binary-tree
vertex-cover
tree
Graphs
minimum-spanning-tree
kruskal
prims
network-flows-and-Bipartite-matching
edmond-karp-algorithm
residual-flow-graphs
shortest-path
bellman-ford
dijikstra
floyd-all-pair-shortest-path
types
directed
strongly-connected-component
topological-sort
traversal
depth-first-search
unweighted
adjacency-list-representation
weighted
adjacency-list-representation
undirected
adjacency-matrix-to-incidence-matrix
articulation-points
connected-components
count-componenets
cycle-detection
traversal
Breath-first-search
Depth-first-traversal
two-coloring
unweighted
adjacency-list-representation
weighted
adjacency-list-representation
Greedy-algorithms
index
Hashing-and-Randomization
Bloom-filter
LRU-cache
min-hash
minimal-perfect-hashing
primality-test
fermat-primality-test
simulation
expected-round-until-heads
weighted-random-distribution
Heaps
Fast-Heap
K-th-element-compare-with-x
min-heap
Lists
find-loop-in-linked-list
find-middle-linkedlist
reverse-linked-list
singly-linked-list
Queues
Priority-queue
Sorting
Bucket-sort
Counting-sort
Heap-sort
Merge-sort
Quick-sort
Quick-sort
Radix-sort
Randomized-Quick-sort
Shell-sort
external-sorting
stable-sort
wiggle-sort
Stacks
balanced-paranthesis
reverse-words-in-sentence
Trees
Interval-trees
binary-search-tree
binary-tree-equality
bst-linked-list
construct-tree-from-given-inorder-and-preorder-traversal
maximum-matching
traversal
iterative-implementation
recursive-implementation
Union-find
structure-implementation
computataional-geometry
bullet-through-largest-number-of-walls
graham-scan-convex-hull
divide-and-conquer
count-of-range-sum
maximum-length-possible-by-cutting-n-given-woods-into-at-least-k-pieces
median-of-two-sorted-arrays
merge-k-sorted-linkedlists
merge-two-linked-lists
partition
three-way-parition-problem-quicksort-dutch-national-flag
range-queries
dynamic-programming
2-D
Heap-Tree-Count
place-of-sign
number-of-elements-greater-than-k-in-the-range-l-to-r-using-fenwick-tree-offline-queries
smallest-subarray
special-sequence
searching
binary-search
counting-occurences-via-binary-search
majority-voting-algorithm
meta-binary-search-one-sided-binary-search
square-root
selection
Quick-select
find-median-in-linear-time
find-the-first-missing-number
majority-voting-algorithm
strings
Rabin-karp-string-search
count-similar-substrings
fast_hash
hash-func
knuth-Morris-Pratt-algorithm
rotodrome
suffix-array
n-log-n
n-squared-log-n-build
suffix-array
two-tuple-construction
suffix-tree
construction
suffix-trie
trie
python
Basic
array
binary-search
dis-joint-set
hash-function
hash-table
linkedList
queue
segment-tree
stack
trie
Combinatorial-search
backtracking
all-topological-ordering-of-given-dag
construct-valid-n-pair-parenteses
multiset-add-upto-t
permutation-vs-subset
Recursion
Finding-Maximum-Permutation
celebrity-problem
checkerboard-covering
top-sort
concurrency
multi-threaded-fizzbuzz
dynamic-programming
0-1-matrix
2-D
place-of-sign
backtracking
valid-sudoku
boolean-paranthesis
box-stacking
coin-change-2
coin-change-problem
coin-change
count-number-of-ways-to-cover-a-distance
cutting-a-rod
dice-throw
edit-distance
egg-dropping-puzzle
fibonacci-number
knap-sack
longest-common-subsequence
longest-increasing-subsequence
longest-path-in-matrix
matrix-chain-multiplication
maximum-product-cutting
minimum-partition
n-th-tribonacci-number
optimal-strategy
partition-problem
shortest-common-subsequqnces
subset-sum-problem
super-ugly-number
types
1-dimensional
2-dimensional
interval-dp
subset-dp
tree-dp
ugly-number
word-break-problem
graph
adjacency-matrix
adjancy-list
articulation-points
bfs-avoiding-loop
bfs_traversal
count_nodes
dfs_traversal
dijishktra
hamilton-path
top-sort
heap
max-heap
treap
probability
month-hall-paradox
problems
Divide-arrays
Find-Klargest-number-in-unsorted-array
max-heap
min-heap-nlogk
quick-select-worst-case-linear-time
sorting-nlogn
Minimum-operations
absolute-integer
bit-mainpulation
count-set-bits
data-structure-to-store-words
first-and-last-position-of-target-in-list
min_substring
palindrome-construction
recursion-and-backtracking
sieve-of-eratosthenes
smallest-subarray
trapping-water
two-sums
unpredictable-array
selection
k-largest-quickselect
quickSelect
sorting
Insertion-Sort
american-flag-sort
bubblesort
bucket-sort
counting-sort
heap-sort
in-place-merge-sort
intro-sort
merge-sort
quick-sort
radix-sort
selection-sort
sorting-algorithms-benchmark
strings
find-max-frequent-words-with-trie
group-identical-strings
rolling-polynomial-hash
score-of-parenthesis
suffix-trie
topics
Graph-algorithms
eulerian-path
fast-dijikstra
kruskal-mst
prim-mst
strongly-connected-componenet
traveling-salesman
Network-Flow-Problem
Ford-Fulkerson-max-flow
bipartite-matching
hungarian
kuhn_maximum_bipartite_matching
min-cost-max-flow
min-cut
munkres
combinatorial-optimization
dinc-sparse-max-flow
edmond-karp-algorithm-max-flow-min-cut
maximum-bipartite-matching
min-cost-bipartite-matching
minimum-cut-solver
ncr-using-pascals-triangle
push-relabel-max-flow
computational-geometry
convex-hull-jarviss-algorithm
line-intersection-problem
three-points-are-collinear
data-structures
binary-indexed-tree
k-d-tree
lazy-segement-tree
lowest-common-ancestor
splay-tree
suffix-array
union-find-set
geometry
convex-hull
triangulation
memoization
example
number-theory
fibonacci-sequenc
simplex
range-queries
merge-sort-tree
number-of-elements-greater-than-k-in-the-range-l-to-r-using-fenwick-tree-offline-queries
shortest-path
Floyd-Warshall
bellman-ford
dijiskhtra
string-algorithms
naive-method
tree
bfs_traversal
binary-search-tree
dfs_traversal
diameter-of-a-tree
fenwick-binary-indexed-trees
morris-inorder-traversal
quadtree
suffix-tree
tree
trie
word-break-trie
License