Skip to content

code-lucidal58/dsa-python

Repository files navigation

Python for Data Structures, Algorithms, and Interviews!

This repository consists of notes made while going through the course Python for Data Structures, Algorithms, and Interviews! in Udemy. All modules are separated as Jupiter Notebooks.

This course mainly has questions based on different data structures and very less questions based on pre-known algorithms. Kindly refer to my repo for list of named algorithms and their implementations.

All the best and keep coding!! :)

Algorithms characteristics:

Algorithms have associated complexity:

  • space -> memory occupied
  • time -> time taken to complete task irrespective of input size
  • They have set of input and produces output

#Algorithms classification

  • series-> sequential fashion
  • parallel -> break data set and work on each simultaneously
  • exact -> provides exact value as output
  • approximate -> output may or may not be exact e.g. face recognition
  • deterministic -> steps know
  • non-deterministic -> based on guesses

Types of Algorithms

  • searching -> search specific data in a larger data
  • sorting -> sort a dataset
  • computational -> take one data set and return another data set
  • collection -> navigating through elements in a dataset

Algorithms performance

Big-O notation: classifies performance as input size grows. O represents order of operation

Notation Description
O(1) Constant
O(log n) Logarithmic
O(n)
Linear time
O(nlogn) Log-linear
O(n^2) Quadratic

Releases

No releases published

Packages

No packages published