├── .vscode └── settings.json ├── Easy ├── binary-search.py ├── branch-sums.py ├── bubble-sort.py ├── caesar-cipher-encryptor.py ├── class-photos.py ├── depth-first-search.py ├── find-closest-value-in-BST.py ├── find-three-largest-numbers.py ├── first-non-repeating-character.py ├── generate-document.py ├── insertion-sort.py ├── minimum-waiting-time.py ├── node-depths.py ├── non-constructible-change.py ├── nth-fibonacci.py ├── palindrome-check.py ├── product-sum.py ├── remove-duplicates-from-linked-list.py ├── run-length-encoding.py ├── selection-sort.py ├── sorted-square-array.py ├── tandem-bicycle.py ├── tournament-winner.py ├── twoNumberSum.py └── validate-subsequence.py ├── Hard ├── ambiguous-measurements.py ├── boggle-board.py ├── continuous-median.py ├── dijkstra-algorithm.py ├── disk-stacking.py ├── find-loop.py ├── find-nodes-distance-k.py ├── four-number-sum.py ├── generate-div-tags.py ├── glob-matching.py ├── heap-sort.py ├── index-equals-value.py ├── interweaving-strings.py ├── inverted-bisection.py ├── knapsack-problem.py ├── laptop-rentals.py ├── largest-range.py ├── largest-rectangle-under-skyline.py ├── longest-common-subsequence.py ├── longest-substring-without-duplication.py ├── lowest-common-manager.py ├── max-path-sum-binary-trees.py ├── max-sum-increasing-subsequence.py ├── maximize-expression.py ├── maximum-sum-submatrix.py ├── merge-linked-list.py ├── min-number-of-jumps.py ├── min-rewards.py ├── multi-string-search.py ├── numbers-pi.py ├── pattern-matcher.py ├── quick-sort.py ├── quickselect.py ├── radix-sort.py ├── reverse-linked-list.py ├── same-bsts.py ├── search-for-range.py ├── shift-linked-list.py ├── shifted-binary-search.py ├── shorten-path.py ├── solve-sudoku.py ├── sort-k-sorted-array.py ├── special-strings.py ├── subarray-sort.py ├── topological-sort.py ├── underscorify-substring.py ├── validate-three-nodes.py ├── water-area.py └── zigzag-traverse.py ├── Images ├── algo-expert-cover.png └── demo.PNG ├── LICENSE.md ├── Medium ├── array-of-products.py ├── balanced-brackets.py ├── binary-tree-diameter.py ├── breadth-first-search.py ├── bst-construction.py ├── bst-traversal.py ├── cycle-in-graph.py ├── degrees-of-separation.py ├── find-kth-largest-value-in-bst.py ├── find-successor.py ├── first-duplicate-value.py ├── group-anagrams.py ├── height-balanced-binary-tree.py ├── invert-binary-tree.py ├── kadane-algorithm.py ├── levenshtein-distance.py ├── linked-list-construction.py ├── longest-palindromic-substring.py ├── longest-peak.py ├── max-subset-sum-no-adjacent.py ├── merge-overlapping-intervals.py ├── min-heap-construction.py ├── min-height-BST.py ├── min-max-stack-construction.py ├── min-number-of-coins-for-change.py ├── minimum-characters-for-words.py ├── minimum-passes-of-matrix.py ├── monotonic-array.py ├── move-element-to-end.py ├── next-greater-element.py ├── number-of-ways-to-traverse-graph.py ├── permutations.py ├── phone-number-mnemonics.py ├── powerset.py ├── reconstruct-bst.py ├── remove-islands.py ├── remove-kth-node-from-end.py ├── reverse-words-in-string.py ├── river-sizes.py ├── search-in-sorted-matrix.py ├── single-cycle-check.py ├── smallest-difference.py ├── sort-stack.py ├── spiral-traverse.py ├── staircase-traversal.py ├── suffix-trie-construction.py ├── sum-of-linked-lists.py ├── sunset-views.py ├── task-assignment.py ├── three-number-sort.py ├── three-number-sum.py ├── valid-ip-addresses.py ├── valid-starting-city.py ├── validate-bst.py ├── ways-to-make-change.py └── youngest-common-ancestor.py ├── README.md ├── Very Hard ├── A-star-algorithm.py ├── LRU-cache.py ├── airport-connections.py ├── all-kinds-of-node-depths.py ├── apartment-hunting.py ├── calendar-matching.py ├── compare-leaf-traversal.py ├── count-inversions.py ├── detect-arbitrage.py ├── flatten-binary-tree.py ├── iterative-inorder-traversal.py ├── knuth-morris-pratt-algorithm.py ├── line-through-points.py ├── linked-list-palindrome.py ├── longest-balanced-substring.py ├── longest-increasing-subsequence.py ├── longest-string-chain.py ├── max-profits-with-k-transactions.py ├── merge-sort.py ├── merge-sorted-arrays.py ├── minimum-area-rectangle.py ├── node-swap.py ├── non-attacking-queens.py ├── number-of-binary-tree-topologies.py ├── palindrome-partitioning-min-cuts.py ├── rearrange-linked-list.py ├── rectangle-mania.py ├── right-sibling-tree.py ├── right-smaller-than.py ├── smallest-substring-containing.py ├── square-of-zeroes.py ├── two-edge-connected-graph.py ├── waterfall-streams.py └── zip-linked-list.py └── script.py /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /Easy/binary-search.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/binary-search.py -------------------------------------------------------------------------------- /Easy/branch-sums.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/branch-sums.py -------------------------------------------------------------------------------- /Easy/bubble-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/bubble-sort.py -------------------------------------------------------------------------------- /Easy/caesar-cipher-encryptor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/caesar-cipher-encryptor.py -------------------------------------------------------------------------------- /Easy/class-photos.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/class-photos.py -------------------------------------------------------------------------------- /Easy/depth-first-search.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/depth-first-search.py -------------------------------------------------------------------------------- /Easy/find-closest-value-in-BST.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/find-closest-value-in-BST.py -------------------------------------------------------------------------------- /Easy/find-three-largest-numbers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/find-three-largest-numbers.py -------------------------------------------------------------------------------- /Easy/first-non-repeating-character.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/first-non-repeating-character.py -------------------------------------------------------------------------------- /Easy/generate-document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/generate-document.py -------------------------------------------------------------------------------- /Easy/insertion-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/insertion-sort.py -------------------------------------------------------------------------------- /Easy/minimum-waiting-time.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/minimum-waiting-time.py -------------------------------------------------------------------------------- /Easy/node-depths.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/node-depths.py -------------------------------------------------------------------------------- /Easy/non-constructible-change.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/non-constructible-change.py -------------------------------------------------------------------------------- /Easy/nth-fibonacci.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/nth-fibonacci.py -------------------------------------------------------------------------------- /Easy/palindrome-check.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/palindrome-check.py -------------------------------------------------------------------------------- /Easy/product-sum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/product-sum.py -------------------------------------------------------------------------------- /Easy/remove-duplicates-from-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/remove-duplicates-from-linked-list.py -------------------------------------------------------------------------------- /Easy/run-length-encoding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/run-length-encoding.py -------------------------------------------------------------------------------- /Easy/selection-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/selection-sort.py -------------------------------------------------------------------------------- /Easy/sorted-square-array.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/sorted-square-array.py -------------------------------------------------------------------------------- /Easy/tandem-bicycle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/tandem-bicycle.py -------------------------------------------------------------------------------- /Easy/tournament-winner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/tournament-winner.py -------------------------------------------------------------------------------- /Easy/twoNumberSum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/twoNumberSum.py -------------------------------------------------------------------------------- /Easy/validate-subsequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Easy/validate-subsequence.py -------------------------------------------------------------------------------- /Hard/ambiguous-measurements.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/ambiguous-measurements.py -------------------------------------------------------------------------------- /Hard/boggle-board.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/boggle-board.py -------------------------------------------------------------------------------- /Hard/continuous-median.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/continuous-median.py -------------------------------------------------------------------------------- /Hard/dijkstra-algorithm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/dijkstra-algorithm.py -------------------------------------------------------------------------------- /Hard/disk-stacking.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/disk-stacking.py -------------------------------------------------------------------------------- /Hard/find-loop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/find-loop.py -------------------------------------------------------------------------------- /Hard/find-nodes-distance-k.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/find-nodes-distance-k.py -------------------------------------------------------------------------------- /Hard/four-number-sum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/four-number-sum.py -------------------------------------------------------------------------------- /Hard/generate-div-tags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/generate-div-tags.py -------------------------------------------------------------------------------- /Hard/glob-matching.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/glob-matching.py -------------------------------------------------------------------------------- /Hard/heap-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/heap-sort.py -------------------------------------------------------------------------------- /Hard/index-equals-value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/index-equals-value.py -------------------------------------------------------------------------------- /Hard/interweaving-strings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/interweaving-strings.py -------------------------------------------------------------------------------- /Hard/inverted-bisection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/inverted-bisection.py -------------------------------------------------------------------------------- /Hard/knapsack-problem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/knapsack-problem.py -------------------------------------------------------------------------------- /Hard/laptop-rentals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/laptop-rentals.py -------------------------------------------------------------------------------- /Hard/largest-range.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/largest-range.py -------------------------------------------------------------------------------- /Hard/largest-rectangle-under-skyline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/largest-rectangle-under-skyline.py -------------------------------------------------------------------------------- /Hard/longest-common-subsequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/longest-common-subsequence.py -------------------------------------------------------------------------------- /Hard/longest-substring-without-duplication.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/longest-substring-without-duplication.py -------------------------------------------------------------------------------- /Hard/lowest-common-manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/lowest-common-manager.py -------------------------------------------------------------------------------- /Hard/max-path-sum-binary-trees.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/max-path-sum-binary-trees.py -------------------------------------------------------------------------------- /Hard/max-sum-increasing-subsequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/max-sum-increasing-subsequence.py -------------------------------------------------------------------------------- /Hard/maximize-expression.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/maximize-expression.py -------------------------------------------------------------------------------- /Hard/maximum-sum-submatrix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/maximum-sum-submatrix.py -------------------------------------------------------------------------------- /Hard/merge-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/merge-linked-list.py -------------------------------------------------------------------------------- /Hard/min-number-of-jumps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/min-number-of-jumps.py -------------------------------------------------------------------------------- /Hard/min-rewards.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/min-rewards.py -------------------------------------------------------------------------------- /Hard/multi-string-search.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/multi-string-search.py -------------------------------------------------------------------------------- /Hard/numbers-pi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/numbers-pi.py -------------------------------------------------------------------------------- /Hard/pattern-matcher.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/pattern-matcher.py -------------------------------------------------------------------------------- /Hard/quick-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/quick-sort.py -------------------------------------------------------------------------------- /Hard/quickselect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/quickselect.py -------------------------------------------------------------------------------- /Hard/radix-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/radix-sort.py -------------------------------------------------------------------------------- /Hard/reverse-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/reverse-linked-list.py -------------------------------------------------------------------------------- /Hard/same-bsts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/same-bsts.py -------------------------------------------------------------------------------- /Hard/search-for-range.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/search-for-range.py -------------------------------------------------------------------------------- /Hard/shift-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/shift-linked-list.py -------------------------------------------------------------------------------- /Hard/shifted-binary-search.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/shifted-binary-search.py -------------------------------------------------------------------------------- /Hard/shorten-path.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/shorten-path.py -------------------------------------------------------------------------------- /Hard/solve-sudoku.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/solve-sudoku.py -------------------------------------------------------------------------------- /Hard/sort-k-sorted-array.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/sort-k-sorted-array.py -------------------------------------------------------------------------------- /Hard/special-strings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/special-strings.py -------------------------------------------------------------------------------- /Hard/subarray-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/subarray-sort.py -------------------------------------------------------------------------------- /Hard/topological-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/topological-sort.py -------------------------------------------------------------------------------- /Hard/underscorify-substring.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/underscorify-substring.py -------------------------------------------------------------------------------- /Hard/validate-three-nodes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/validate-three-nodes.py -------------------------------------------------------------------------------- /Hard/water-area.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/water-area.py -------------------------------------------------------------------------------- /Hard/zigzag-traverse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Hard/zigzag-traverse.py -------------------------------------------------------------------------------- /Images/algo-expert-cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Images/algo-expert-cover.png -------------------------------------------------------------------------------- /Images/demo.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Images/demo.PNG -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/LICENSE.md -------------------------------------------------------------------------------- /Medium/array-of-products.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/array-of-products.py -------------------------------------------------------------------------------- /Medium/balanced-brackets.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/balanced-brackets.py -------------------------------------------------------------------------------- /Medium/binary-tree-diameter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/binary-tree-diameter.py -------------------------------------------------------------------------------- /Medium/breadth-first-search.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/breadth-first-search.py -------------------------------------------------------------------------------- /Medium/bst-construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/bst-construction.py -------------------------------------------------------------------------------- /Medium/bst-traversal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/bst-traversal.py -------------------------------------------------------------------------------- /Medium/cycle-in-graph.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/cycle-in-graph.py -------------------------------------------------------------------------------- /Medium/degrees-of-separation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/degrees-of-separation.py -------------------------------------------------------------------------------- /Medium/find-kth-largest-value-in-bst.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/find-kth-largest-value-in-bst.py -------------------------------------------------------------------------------- /Medium/find-successor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/find-successor.py -------------------------------------------------------------------------------- /Medium/first-duplicate-value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/first-duplicate-value.py -------------------------------------------------------------------------------- /Medium/group-anagrams.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/group-anagrams.py -------------------------------------------------------------------------------- /Medium/height-balanced-binary-tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/height-balanced-binary-tree.py -------------------------------------------------------------------------------- /Medium/invert-binary-tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/invert-binary-tree.py -------------------------------------------------------------------------------- /Medium/kadane-algorithm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/kadane-algorithm.py -------------------------------------------------------------------------------- /Medium/levenshtein-distance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/levenshtein-distance.py -------------------------------------------------------------------------------- /Medium/linked-list-construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/linked-list-construction.py -------------------------------------------------------------------------------- /Medium/longest-palindromic-substring.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/longest-palindromic-substring.py -------------------------------------------------------------------------------- /Medium/longest-peak.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/longest-peak.py -------------------------------------------------------------------------------- /Medium/max-subset-sum-no-adjacent.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/max-subset-sum-no-adjacent.py -------------------------------------------------------------------------------- /Medium/merge-overlapping-intervals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/merge-overlapping-intervals.py -------------------------------------------------------------------------------- /Medium/min-heap-construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/min-heap-construction.py -------------------------------------------------------------------------------- /Medium/min-height-BST.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/min-height-BST.py -------------------------------------------------------------------------------- /Medium/min-max-stack-construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/min-max-stack-construction.py -------------------------------------------------------------------------------- /Medium/min-number-of-coins-for-change.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/min-number-of-coins-for-change.py -------------------------------------------------------------------------------- /Medium/minimum-characters-for-words.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/minimum-characters-for-words.py -------------------------------------------------------------------------------- /Medium/minimum-passes-of-matrix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/minimum-passes-of-matrix.py -------------------------------------------------------------------------------- /Medium/monotonic-array.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/monotonic-array.py -------------------------------------------------------------------------------- /Medium/move-element-to-end.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/move-element-to-end.py -------------------------------------------------------------------------------- /Medium/next-greater-element.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/next-greater-element.py -------------------------------------------------------------------------------- /Medium/number-of-ways-to-traverse-graph.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/number-of-ways-to-traverse-graph.py -------------------------------------------------------------------------------- /Medium/permutations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/permutations.py -------------------------------------------------------------------------------- /Medium/phone-number-mnemonics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/phone-number-mnemonics.py -------------------------------------------------------------------------------- /Medium/powerset.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/powerset.py -------------------------------------------------------------------------------- /Medium/reconstruct-bst.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/reconstruct-bst.py -------------------------------------------------------------------------------- /Medium/remove-islands.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/remove-islands.py -------------------------------------------------------------------------------- /Medium/remove-kth-node-from-end.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/remove-kth-node-from-end.py -------------------------------------------------------------------------------- /Medium/reverse-words-in-string.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/reverse-words-in-string.py -------------------------------------------------------------------------------- /Medium/river-sizes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/river-sizes.py -------------------------------------------------------------------------------- /Medium/search-in-sorted-matrix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/search-in-sorted-matrix.py -------------------------------------------------------------------------------- /Medium/single-cycle-check.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/single-cycle-check.py -------------------------------------------------------------------------------- /Medium/smallest-difference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/smallest-difference.py -------------------------------------------------------------------------------- /Medium/sort-stack.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/sort-stack.py -------------------------------------------------------------------------------- /Medium/spiral-traverse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/spiral-traverse.py -------------------------------------------------------------------------------- /Medium/staircase-traversal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/staircase-traversal.py -------------------------------------------------------------------------------- /Medium/suffix-trie-construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/suffix-trie-construction.py -------------------------------------------------------------------------------- /Medium/sum-of-linked-lists.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/sum-of-linked-lists.py -------------------------------------------------------------------------------- /Medium/sunset-views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/sunset-views.py -------------------------------------------------------------------------------- /Medium/task-assignment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/task-assignment.py -------------------------------------------------------------------------------- /Medium/three-number-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/three-number-sort.py -------------------------------------------------------------------------------- /Medium/three-number-sum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/three-number-sum.py -------------------------------------------------------------------------------- /Medium/valid-ip-addresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/valid-ip-addresses.py -------------------------------------------------------------------------------- /Medium/valid-starting-city.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/valid-starting-city.py -------------------------------------------------------------------------------- /Medium/validate-bst.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/validate-bst.py -------------------------------------------------------------------------------- /Medium/ways-to-make-change.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/ways-to-make-change.py -------------------------------------------------------------------------------- /Medium/youngest-common-ancestor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Medium/youngest-common-ancestor.py -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/README.md -------------------------------------------------------------------------------- /Very Hard/A-star-algorithm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/A-star-algorithm.py -------------------------------------------------------------------------------- /Very Hard/LRU-cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/LRU-cache.py -------------------------------------------------------------------------------- /Very Hard/airport-connections.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/airport-connections.py -------------------------------------------------------------------------------- /Very Hard/all-kinds-of-node-depths.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/all-kinds-of-node-depths.py -------------------------------------------------------------------------------- /Very Hard/apartment-hunting.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/apartment-hunting.py -------------------------------------------------------------------------------- /Very Hard/calendar-matching.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/calendar-matching.py -------------------------------------------------------------------------------- /Very Hard/compare-leaf-traversal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/compare-leaf-traversal.py -------------------------------------------------------------------------------- /Very Hard/count-inversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/count-inversions.py -------------------------------------------------------------------------------- /Very Hard/detect-arbitrage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/detect-arbitrage.py -------------------------------------------------------------------------------- /Very Hard/flatten-binary-tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/flatten-binary-tree.py -------------------------------------------------------------------------------- /Very Hard/iterative-inorder-traversal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/iterative-inorder-traversal.py -------------------------------------------------------------------------------- /Very Hard/knuth-morris-pratt-algorithm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/knuth-morris-pratt-algorithm.py -------------------------------------------------------------------------------- /Very Hard/line-through-points.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/line-through-points.py -------------------------------------------------------------------------------- /Very Hard/linked-list-palindrome.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/linked-list-palindrome.py -------------------------------------------------------------------------------- /Very Hard/longest-balanced-substring.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/longest-balanced-substring.py -------------------------------------------------------------------------------- /Very Hard/longest-increasing-subsequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/longest-increasing-subsequence.py -------------------------------------------------------------------------------- /Very Hard/longest-string-chain.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/longest-string-chain.py -------------------------------------------------------------------------------- /Very Hard/max-profits-with-k-transactions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/max-profits-with-k-transactions.py -------------------------------------------------------------------------------- /Very Hard/merge-sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/merge-sort.py -------------------------------------------------------------------------------- /Very Hard/merge-sorted-arrays.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/merge-sorted-arrays.py -------------------------------------------------------------------------------- /Very Hard/minimum-area-rectangle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/minimum-area-rectangle.py -------------------------------------------------------------------------------- /Very Hard/node-swap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/node-swap.py -------------------------------------------------------------------------------- /Very Hard/non-attacking-queens.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/non-attacking-queens.py -------------------------------------------------------------------------------- /Very Hard/number-of-binary-tree-topologies.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/number-of-binary-tree-topologies.py -------------------------------------------------------------------------------- /Very Hard/palindrome-partitioning-min-cuts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/palindrome-partitioning-min-cuts.py -------------------------------------------------------------------------------- /Very Hard/rearrange-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/rearrange-linked-list.py -------------------------------------------------------------------------------- /Very Hard/rectangle-mania.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/rectangle-mania.py -------------------------------------------------------------------------------- /Very Hard/right-sibling-tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/right-sibling-tree.py -------------------------------------------------------------------------------- /Very Hard/right-smaller-than.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/right-smaller-than.py -------------------------------------------------------------------------------- /Very Hard/smallest-substring-containing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/smallest-substring-containing.py -------------------------------------------------------------------------------- /Very Hard/square-of-zeroes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/square-of-zeroes.py -------------------------------------------------------------------------------- /Very Hard/two-edge-connected-graph.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/two-edge-connected-graph.py -------------------------------------------------------------------------------- /Very Hard/waterfall-streams.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/waterfall-streams.py -------------------------------------------------------------------------------- /Very Hard/zip-linked-list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/Very Hard/zip-linked-list.py -------------------------------------------------------------------------------- /script.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/das-jishu/algoexpert-data-structures-algorithms/HEAD/script.py --------------------------------------------------------------------------------