Page Index - codepath/compsci_guides GitHub Wiki
714 page(s) in this GitHub Wiki:
- Home
- Technical Interviewing
- Data Structures
- Algorithms
- 01 Matrix
- 2 Pointer Palindrome
- 2 Pointer Remove Element
- 2 Pointer Reverse Letters
- 2 Pointer Reverse List
- 2 Pointer Target Sum
- 3 Node Booleans
- 3 Node Equality
- 3 Node Product I
- 3 Node Product II
- 3 Node Sum I
- 3 Node Sum II
- 3Sum
- Above the Threshold
- Accounts Merge
- Add First
- Add One Row to Tree
- Add Pokemon Type
- Add Special Item
- Add Two Numbers
- Add Two Numbers II
- Add Two Numbers Represented by Linked Lists
- Advantage Shuffle
- All Nodes Distance K in Binary Tree
- Are We There Yet?
- Asteroid Collision
- Attendance Rate
- Average Book Ratings
- Average Score
- Averages of Subarray
- Backspace Compare
- Backtracking
- Backtracking UMPIRE Cheat Sheet
- Backwards Binary Search
- Balanced Binary Tree
- Barbie Linked List
- Basic Calculator
- Battle Pokemon
- Battleships in a Board
- Below Threshold
- Best Book
- Best Movie Genre
- Best Team
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock (TIP101)
- Big O Complexity Analysis
- Big O Time Space Complexity
- Binary Search
- Binary Search I
- Binary Search II
- Binary Search III
- Binary Search IV
- Binary Search Problem
- Binary Substrings
- Binary Tree All Lesser
- Binary Tree Any Greater
- Binary Tree Find
- Binary Tree Height
- Binary Tree Inorder Traversal
- Binary Tree Is Leaf
- Binary Tree Level Order Traversal
- Binary Tree Max
- Binary Tree Min
- Binary Tree Paths
- Binary Tree Preorder Traversal
- Binary Tree Product
- Binary Tree Pruning
- Binary Tree Right Side View
- Binary Tree Size
- Binary Trees
- Binary Trees 2nd Largest Node
- Binary Trees Iterative Traversal
- Binary Trees UMPIRE Cheat Sheet
- Blackjack
- Bottom Up DP Technique
- Brick Wall
- BST Any Greater
- BST Descending Leaves
- BST Find
- BST Find Floor
- BST In order Predecessor
- BST In order Successor
- BST Insert I
- BST Insert II
- BST Insert III
- BST Is Full
- BST Is Leaf
- BST Leaves Sum to Root
- BST Remove I
- BST Remove II
- BST Remove III
- Build A Binary Tree I
- Build A Binary Tree II
- Build A Binary Tree III
- Build Inventory
- Buildings with an Ocean View
- Calculate Difference
- Calculate Factorial
- Calculate GPA
- Calculate Power
- Calculate the Squares
- Calculate Tip
- Calculate Tournament Placement
- Calling Mississippi
- Can I Win
- Card Class
- Cast Vote
- Catch Pokemon
- Chase List
- Chase String
- Cheapest Flights Within K Stops
- Check Balanced Binary Tree
- Check for Number
- Checking Subsequence
- Choose Pokemon
- Choose Your Pokemon
- Circle Majority
- Circle Search
- Circular Linked List Delete
- Circular Linked List Rotate
- Circular List Length
- Classify Age
- Climbing Stairs
- Climbing Stairs (TIP101)
- Clone Graph
- Collect Nodes of a Cycle in a Linked List
- Connecting Cities With Minimum Cost
- Consecutive Characters
- Construct Binary Tree from Preorder and Inorder Traversal
- Container With Most Water
- Container with Most Water (TIP101)
- Contains Duplicates
- Contains Duplicates (TIP101)
- Contributing Guidelines
- Convert a Singly Linked List to a Circular Linked List
- Convert Binary Number in a Linked List to Integer
- Convert Singly Linked List to Doubly Linked List
- Convert Sorted Array to Binary Search Tree
- Convert Sorted List to BST
- Convert Temperature
- Convert to Linked List
- Copy Linked List
- Count Evens
- Count Good Nodes in Binary Tree
- Count Negatives
- Count of Matches in Tournament
- Count Pairs
- Count Rotations
- Count Vowels
- Countdown
- Counter
- Counting Down
- Course Schedule
- Cousins in Binary Tree
- Crawler Log Folder
- Create a Dictionary
- Create Double Links
- Create Number
- Create Squirtle
- Custom Sort String
- Decode String
- Delete Duplicates in a Linked List
- Delete Minimum
- Delete N Nodes after M Nodes
- Delete Node From Binary Search Tree
- Delete Tail
- Destination City
- Detect and Remove Cycle in a Linked List
- Detect Circular Linked List
- Diameter of Binary Tree
- Diameter of Binary Tree (TIP101)
- Dictionary Description
- Dictionary Difference
- Dictionary Intersection
- Dinner Plate Stacks
- Distribute Coins in Binary Tree
- Divisors
- Does it Cycle?
- Double to Single
- Doubly Linked List
- DP Table
- Dungeon Game
- Duplicates Within Range
- Dynamic Programming
- Element with a frequency of K
- Encode and Decode TinyURL
- Equal Tree Split
- Evaluate Boolean Full Binary Tree
- Evaluate Division
- Evaluate Mathematical Expression Tree
- Evaluate Palindrome
- Evaluate Reverse Polish Notation
- Evaluate Two Sum
- Evaluating Solutions
- Evens List
- Exclusive Elements
- Factorial Cases
- Fibonacci Cases
- Fibonacci Number
- Filter by Price
- Find a Celebrity
- Find Ceiling
- Find Center of Star Graph
- Find Corresponding Node in Cloned Tree
- Find Duplicate Subtrees
- Find Eventual Safe States
- Find Floor
- Find Frequencies
- Find Frequency
- Find if Path Exists in Graph
- Find K Pairs with Smallest Sums
- Find Largest Value in Each Tree Row
- Find Last Node in a Linked List Cycle
- Find Leftmost Node I
- Find Leftmost Node II
- Find Leftmost Path I
- Find Leftmost Path II
- Find Length of Doubly Linked List from Any Node
- Find Lonely Nodes
- Find Majority Element
- Find Max
- Find Middle Node
- Find Minimum Depth of Binary Tree
- Find Minimum in Linked List
- Find Minimum in Rotated Sorted Array
- Find Missing
- Find Mode
- Find Odd Occurrences
- Find Rightmost Node I
- Find Rightmost Node II
- Find Subsequence of Length K With the Largest Sum
- Find Sum Pair
- Find the Diameter of Binary Tree
- Find the Imposter
- Find the Middle
- Find the Town Judge
- Find Unique Items
- Finish All Tasks
- First Bad Version
- First Duplicate
- First Item
- First Repeating Element
- First Unique
- FizzBuzz
- Flatten Binary Tree to Linked List
- Flip Game
- Flip Signs
- Flipping an Image
- Flood Fill
- Flowerbed
- Frequency Count
- Frequency Map
- Generate Parentheses
- Get it Out of Here!
- Get Odd Numbers
- Get Pokemon
- Get Rank
- Get Tail
- Get Value
- Good Pairs
- Good Substring
- Graph Traversals
- Graphs
- Graphs UMPIRE Cheat Sheet
- Greater Than Threshold
- Greatest Common Divisor of Strings
- Greatest Node
- Greedy Algorithms
- Group Anagrams
- Group Anagrams (TIP101)
- Group By Frequency
- Guess Number Higher or Lower
- Hand Class
- Has Duplicates
- Hash Tables
- Hash Tables UMPIRE Cheat Sheet
- Head and Tail Nodes
- Heaps
- Hello Hello
- Hello User!
- Hello World!
- Highest Exponent
- Highest Priority Task
- House Robber
- How Many 0s (Iterative)
- How Many 0s (Recursive)
- How Many 1s
- How Many Smaller
- Identical Binary Trees
- Identical Linked Lists
- Implement Queue Using Stacks
- Implement Stack Using Queue
- In order Traversal
- In The Stars
- Increasing Order Search Tree
- Increment by 1
- Increment Linked List Node Values
- Index Value Map
- Insert into a Binary Search Tree
- Insert into a Sorted Circular Linked List
- Insert Node as Second Element
- Insert Value
- Insert Value First
- Integer Replacement
- Integer to String
- Interleave Lists
- Intersection of Two Linked Lists
- Intersection of Two Lists
- Invert Binary Tree
- Is Caught
- Is Even valued
- Is Monotonic
- Is Odd valued
- Is Palindrome?
- Is Pangram
- Is Subsequence
- Is Symmetric Tree
- Is Uni valued
- Island Perimeter
- Items to Restock
- K Closest Points to the Origin
- Keys and Rooms
- Keys in Common
- Keys versus Values
- Koko Eating Bananas
- Kth Largest Element in a Stream
- Kth Largest Element in an Array
- Kth Smallest Element in a BST
- Kth Smallest Node in a BST
- Largest Number
- Last Item
- Last Stone Weight
- Leaf Similar Trees
- Leap Year
- Leaves of a Binary Tree
- Length of List
- Level Order Traversal in Dictionary
- Level Order Traversal of Binary Tree
- Level Order Traversal of Binary Tree with Nested Lists
- Linear Search
- Linked List Cycle
- Linked List Cycle II
- Linked List Length
- Linked List Two Pointer
- Linked List UMPIRE Cheat Sheet
- Linked Listify
- Linked Lists
- Linking Nodes
- List Concatenation
- List Intersection
- List Nodes
- List Occurrences
- Long Pressed
- Longest Common Prefix
- Longest Consecutive Sequence
- Longest Palindromic Substring
- Longest Repeating Character Replacement
- Longest Substring
- Longest Uniform Substring
- Lowest Common Ancestor in Binary Tree
- Lowest Common Ancestor of a Binary Tree
- LRU Cache
- Lucky Numbers in a Matrix
- Lunch Menu
- Majority Element
- Make Pairs
- Make Palindromes
- Mario Party
- Matchsticks to Square
- Max Area of Island
- Max Chunks To Make Sorted II
- Max Difference
- Maximal Network Rank
- Maximal Rectangle
- Maximum Depth of Binary Tree
- Maximum Nodes at Any Level in Binary Tree
- Maximum Subarray
- Merge Binary Trees
- Merge Catalogs
- Merge Intervals
- Merge Nodes Between Zeros in a Linked List
- Merge Sort I
- Merge Sort II
- Merge Sort III
- Merge Sorted Array
- Merge Sorted Lists
- Merge to Palindrome
- Merge Two Sorted Linked Lists
- Merge Two Sorted Lists
- Middle Match
- Middle Node
- Middle of the Linked List
- Min Cost Climbing Stairs
- Min Depth of Binary Trees
- Min Stack
- Minimum Depth of Binary Tree
- Minimum Difference in BST
- Minimum Distance
- Minimum Height Trees
- Minimum Knight Moves
- Minimum Path Sum
- Missing Integer
- Missing Number
- Most Frequent Subtree Sum
- Most Stones Removed
- Mountain Peak
- Move Even Integers
- Move Tail to Front of Linked List
- Move Zeroes
- Moving Average from Data Stream
- Multiple Pass
- Multiples of Five
- Multiplication Table
- Multiply List
- N Queens
- Neatly Nested
- Needle in a Haystack
- Negative Numbers
- Nested Binary Trees
- Nested Constructors
- New UMPIRE Problem: Queues
- Next Prime
- No Duplicates Allowed
- Node Class
- Node Values Between Given Levels in Binary Tree
- Number of Arithmetic Triplets
- Number of Connected Components
- Number of Good Paths
- Number of Islands
- Number of Islands Problem
- Number of People That Can Be Seen in a Grid
- Number of Recent Calls
- Number of Students Unable to Eat Lunch
- Odd Even Level Sum Difference in Binary Tree
- Odd Indices
- Odd Keys Even Values
- One to Many
- Pacific Atlantic Water Flow
- Palindrome
- Palindrome Linked Lists
- Partition Labels
- Partition List Around Value
- Pascal's Triangle
- Pascal's Triangle II
- Path Sum
- Path Sum III
- Path Sum in Binary Tree
- Path with Maximum Gold
- Perfect Match
- Perfect Number
- Permutations
- Player Class
- Player Match
- Plus One
- Pokemon Class
- Pokemon Evolution
- Poker Two Pair Hand
- Pop Node
- Positive Negative Pairs
- Post order Traversal
- Pow(x,n)
- Power of Four
- Power of Four (TIP101)
- Power of Three
- Power of Two
- Pre order Traversal
- Prime Number
- Print Backwards
- Print Binary Tree
- Print Card
- Print Corner Nodes of Each Level in Binary Tree
- Print Doubled List
- Print Hand
- Print Inventory
- Print Level Order Traversal of Binary Tree
- Print Linked List
- Print List
- Print Pair
- Print the Index
- Printing Linked List
- Product of Array Except Self
- Product of Two Integers
- Put it in Reverse
- Quality Control
- Rabbits In The Forest
- Race Results
- Reconstruct Itinerary
- Recursive Count 7s
- Recursive Digits Sum
- Recursive Power of 2
- Recursive Power of 4
- Recursive Product
- Recursive Remove Char
- Recursive Sum
- Remove Char
- Remove Duplicates
- Remove Duplicates from Sorted List
- Remove Duplicates from Sorted List II
- Remove Duplicates with O(1)
- Remove Element
- Remove First Value
- Remove Linked List Elements
- Remove Node by Value from Linked List
- Remove Nth Node from End of List
- Remove Tail
- Remove Vowels
- Replace Node
- Replace Node Value with Sum of Subtree
- Restock Inventory
- Return Book
- Return Doubled List
- Reverse a Doubly Linked List
- Reverse a String
- Reverse Letters
- Reverse Linked List
- Reverse Linked List (TIP101)
- Reverse Linked List II
- Reverse List
- Reverse Nodes in k Group
- Reverse Prefix
- Reverse Sentence
- Reverse String
- Reverse Sublist of a Linked List
- Reverse Them, K?
- Reverse Vowels
- Reverse Words in a String
- Reverse Words in a String II
- Rock, Paper, Scissors
- Roman to Integer
- Root to Leaf Paths
- Rotate a Doubly Linked List to the Left
- Rotate Image
- Rotate Left
- Rotate List
- Rotting Oranges
- Run Length Encoding
- Same Trees
- Scheduling Meeting Rooms
- Score of Parentheses
- Search a 2D Matrix
- Search in Rotated Sorted Array
- Second Minimum Node in a Special Binary Tree
- Sequential Digits
- Set Character
- Set Matrix Zeros
- Set Mismatch
- Sharing Cookies
- Shifting Letters
- Shopping Offers
- Shortest Distance to a Character
- Shortest Path to Get Food
- Shortest Unsorted Subarray
- Shuffle Merge
- Single Number
- Skip and Remove Nodes in a Linked List
- Sleep Assessment
- Sort a stack using a temporary stack
- Sort Colors
- Sort List by Parity
- Sorted Squares
- Sorting Algorithms
- Sorting colors
- Special Numbers
- Spiral Matrix
- Spiral Matrix IV
- Sqrt(x)
- Square Root
- Squares of a Sorted Array
- Squash Spaces
- Stacks and Queues
- Stacks and Queues UMPIRE Cheat Sheet
- String and Arrays UMPIRE Cheat Sheet
- String Compression
- String Length Cases
- String to Integer
- String to Integer (ATOI)
- Strings and Arrays
- Student Directory
- Subarray Sum Equals K
- Subsequence
- Subsets
- Substring
- Substring Search
- Sum Even Values
- Sum of 1 to 10
- Sum of Binary Tree Node Tilts
- Sum of Cards
- Sum of Left Leaves
- Sum of Node Values by Level in Binary Tree
- Sum of Strings
- Sum of Two Integers
- Sum Root to Leaf Numbers
- Sum Tree
- Sum Unique Elements
- Swap Ends
- Swap Nodes In Pairs
- Swim in Rising Water
- Symmetric Tree
- Take from Stock
- Target Sum
- Task Scheduler
- Teemo's Attack
- Temp Head
- Ternary Search
- Teting A Second New Page 1 23 24
- The Earliest Moment When Everyone Become Friends
- The Power of One
- The Time When the Network Becomes Idle
- Time Needed to Inform All Employees
- TIP101 Breakout Problem Solutions
- TIP101 Example Problem
- TIP101 Unit 1
- TIP101 Unit 10
- TIP101 Unit 2
- TIP101 Unit 3
- TIP101 Unit 4
- TIP101 Unit 5
- TIP101 Unit 6
- TIP101 Unit 7
- TIP101 Unit 8
- TIP101 Unit 9
- TIP102 Breakout Problem Solutions
- TIP102 Unit 1
- TIP102 Unit 10
- TIP102 Unit 11
- TIP102 Unit 12
- TIP102 Unit 2
- TIP102 Unit 3
- TIP102 Unit 4
- TIP102 Unit 5
- TIP102 Unit 6
- TIP102 Unit 7
- TIP102 Unit 8
- TIP102 Unit 9
- Today's Mood
- Tom and Jerry
- Topological Sort
- Total Sum
- Total Sum in Range
- Transformable Binary Trees by Swapping Subtrees
- Transpose Matrix
- Trapping Rain Water
- Two Pointer
- Two pointer (also known as 'Sliding Window')
- Two Pointer Method
- Two Sum
- Two Sum II
- UMPIRE Cheat Sheets
- UMPIRE Interview Strategy
- UMPIRE Problem Solutions
- Unique Number of Occurrences
- Unique Paths
- Unit 1 Session 1
- Unit 1 Session 1 Advanced
- Unit 1 Session 1 Standard
- Unit 1 Session 2
- Unit 1 Session 2 Advanced
- Unit 1 Session 2 Standard
- Unit 10 Session 1
- Unit 10 Session 2
- Unit 2 Session 1
- Unit 2 Session 2
- Unit 3 Session 1
- Unit 3 Session 2
- Unit 4 Session 1
- Unit 4 Session 2
- Unit 5 Session 1
- Unit 5 Session 2
- Unit 6 Session 1
- Unit 6 Session 2
- Unit 7 Session 1
- Unit 7 Session 2
- Unit 8 Session 1
- Unit 8 Session 2
- Unit 9 Session 1
- Unit 9 Session 2
- Unscramble and Divide
- Update Chase
- Update Kart
- Update Linked List Sequence
- Update or Warn
- Update Score
- Valid Card
- Valid Palindrome
- Valid Palindrome II
- Valid Parentheses
- Valid Parentheses (TIP101)
- Valid Plaindrome
- Valid Word Abbreviation
- Validate Binary Search Tree
- Validate Stack Sequences
- Verify Update
- Vertical Order Traversal of a Binary Tree
- Vertical Order Traversal of Binary Tree
- Vowels in Substring
- Was That a Crit?
- What a Nice String
- What time is it?
- Where Do We Begin?
- Where Does it Go (Iterative)
- Where Does it Go (Recursive)
- Word Break
- Word Follows Pattern
- Word Frequency
- Word Ladder
- Word Pattern
- Word Search
- Word Search II
- Zodiac Signs
- Reconstruct Itinerary