Skip to content

ayadarwesh/Coding-Interview-Prep

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Steps to solving a problem

  1. Read all constraints carefully

  2. Repeate the problem in your own words

  3. Ask clarifying questions

  4. Solve it conceptually without code

    1. Explain the naive approach(bruteforce) first and state that it's not the optimal solution
    2. Explain a more optimized solution
  5. Run a test case to see if your solution works

  6. Ask if you should proceed with coding your solution

Data Structures

  • Array
  • Linked List
    • Singly Linked List
    • Doubly Linked List
  • Stack
  • Queue
  • Hash table
  • Hash set
  • Sets (WeakSet)
  • Maps (WeakMap)
  • Binary trees
  • Heap
  • Graphs
    • Directed
    • Undirected
    • Adjacency Matrix
    • Adjacency List
    • Traversals: BFS, DFS

Common techniques

Algorithms

  • Sorting
  • Searching
  • Divide and Conquer
  • Dynamic Programming and Memoization
  • Greedy
  • Recursion
  • Graph Traversal (BFS and DFS)

Sorting Algorithms

  • Bubble sort
  • Insertion sort
  • Quick sort
  • Merge sort
  • Selection sort
  • Radix sort
  • Heap sort

Material

Practice Problems

Misc

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 85.4%
  • TypeScript 12.4%
  • JavaScript 2.2%