Skip to content

PeterHdd/coding-interview-preparations

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures and Algorithm Cheat Sheets

Defintions

  • Algorithm: method for solving a problem.
  • Data structure: method to store information

Goal

  • You need to always search for the fastest way in an algorithm. If you solved something in O(n) and it can be solved in O(log n) then you must do that.

Therefore, you need to know the time complexity of each of those data structures, if the data structure takes less time than another then it's probably better to use that.

  • Remember, you have a big problem and all you need to is to solve the sub problems which will eventually solve the big problem.

Fundamentals

Algorithms

Data Structures

Searching

Sorting

Dynamic Programming

Notes

Helpful links

Other Info For Interviews

Key terms

Amortized Constant time: Amortized analysis is used for algorithms that have expensive operations that happen only rarely. For example dynamic array (arraylist since it's backed by an array), whenever you reach the end of an array, then you need to double it's size and move all the elements to the new array. After that adding new elements will be O(1).

Leetcode lists to do

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published