🍕
Published on

Lecture 1: Algorithms and Computation Brief

Authors

Computation problem - binary relation from problem inputs to correct outputs.

Algorithm - a set of steps to be followed to perform a particular task.

Induction - making a generalization based on observed patterns.

Asymptotic Notation - mathematical notations used to describe the running time of an algorithm when the input tends towards a particular value or a limiting value .

The 3 main asymptotic notations:

  1. Upper bound (O) - Big-O notation (Worst case)
  2. Lower bound (Ω) - Omega notation (Best case)
  3. Tight bound (Θ) - Theta notation (Average case)

Assymptotic notation graph

How to Solve Algorithms Problem

  • Reduce to a problem that you already know - using a data structure or algorithm:
    • Search Problem(Data Structure)
    • Sort Algorithms
    • Shortest Path Algorithms
  • Design your own (recursive) algorithm.
    • Brute Force
    • Divide and Conquer
    • Dynamic Programming