Skip to content

hazelhkim/Problem-Solving

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Problem-Solving

LeetCode

Top Interview Questions (Easy Collection)

Array

Strings

Linked List

Trees

Sorting and Searching

Dynamic Programming

Design

Math

Others

Cracking the Coding Interview

Data Structures

Arrays and Strings

  1. Hash Tables
  2. ArrayList & Resizable Arrays
  3. StringBuilder

Linked Lists

  1. Creating a Linked List
  2. Deleting a Node from a Singly Linked List
  3. The "Runner" Technique
  4. Recursive Problems

Stacks and Queues

  1. Implementing a Stack
  2. Impelementing a Queue

Trees and Graphs

  1. Types of Trees
  2. Binary Tree Traversal
  3. Binary Heaps ( Min-Heaps and Max-Heaps )
  4. Tries ( Prefix Trees )
  5. Graphs
  6. Graphs Search

Concepts and Algorithms

Bit Manipulation

  1. Bit Manipulation By Hand
  2. Bit Facts and Tricks
  3. Two's Complement and Negative Numbers
  4. Arithmetic vs. Logical Right Shift
  5. Common Bit Task: Getting and Setting

Math and Logic Puzzles

  1. Prime Numbers
  2. Probability
  3. Start Talking
  4. Develop Rules and Patterns
  5. Worst Case Shifting
  6. Algorithm Approaches

Object-Oriented Design

  1. How to Approach
  2. Design Patterns

Recursion and Dynamic Programming

  1. How to Approach
  2. Recursive vs. Iterative Solutions
  3. Dynamic Programming & Memoization

System Design and Scalability

  1. Handling the Questions
  2. Design: Step-By-Step
  3. Algorithms that Scale: Step-By-Step
  4. Key Concepts
  5. Considerations
  6. There is no "perfect" system
  7. Example Problem

Sorting and Searching

Testing

  1. What the Interviewer is looking for
  2. Testing a Real World Object
  3. Testing a Piece of Software
  4. Testing a Function
  5. Troubleshooting Questions

About

An archive of problem-solving practices

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published