These are Python 3 implementations for CTCI problems on HackerRank. Each folder has an editorial that explains key concepts of some of the problems.
- Arrays: Left Rotation
- Strings: Making Anagrams
- Hash Tables: Ransom Note
- Linked Lists: Detect a Cycle
- Stacks: Balanced Brackets
- Queues: A Tale of Two Stacks
- Trees: Is This a Binary Search Tree?
- Heaps: Find the Running Median
- Solved with bisect
- Tries: Contacts
- Solved with bisect
- Sorting: Bubble Sort
- Sorting: Comparator
- Merge Sort: Counting Inversions
- Binary Search: Ice Cream Parlor
- DFS: Connected Cell in a Grid
- BFS: Shortest Reach in a Graph
- Time Complexity: Primality
- Recursion: Fibonacci Numbers
- Recursion: Davis' Staircase
- DP: Coin Change
- Bit Manipulation: Lonely Integer