Complexity Theory Basics

Asymptotic complexity, complexity theory, running times, complexity classes
Free tutorial
Rating: 4.4 out of 5 (1,345 ratings)
19,871 students
Complexity Theory Basics
Free tutorial
Rating: 4.4 out of 5 (1,345 ratings)
19,871 students
Understand running time
Analyze algorithms
Understand complexity notations

Requirements

  • Basic programming concepts
Description

This course is about algorithms running times and complexity theory. In order to be able to classify algorithms we have to define limiting behaviors for functions describing the given algorithm. Thats why big O, big theta and big omega came to be. We are going to talk about the theory behind complexity theory as well as we are going to see some concrete examples. Then we will consider complexity classes including P as well as NP. These concepts are fundamental if we want to have a good grasp on data structures and graph algorithms, so these topics are definitely worth considering. Hope you will like it!

Who this course is for:
  • This course is meant for everyone who are interested in algorithms and want to get a good grasp on complexity theory
Course content
4 sections • 16 lectures • 1h 21m total length
  • Introduction
    01:11
  • Complexity theory basics
    06:38
  • Complexity theory illustration
    03:23
  • Complexity notations - big ordo
    07:17
  • Complexity notations - big omega
    05:12
  • Complexity notations - big theta
    01:45
  • Complexity notations - example
    09:10
  • Algorithm running times
    09:43
  • Complexity classes
    07:14
  • Analysis of algorithm - loops
    04:32
  • Case study O(N) - linear search
    09:23
  • Case stude O(logN) - binary search
    05:10
  • Case study O(N*N) - bubble sort
    06:29
  • Measuring running times
    04:02
  • Course materials
    00:03
  • 90% OFF For Other Courses
    00:29

Instructor
Software Engineer
Holczer Balazs
  • 4.3 Instructor Rating
  • 18,430 Reviews
  • 152,781 Students
  • 31 Courses

Hi! 

My name is Balazs Holczer. I am from Budapest, Hungary. I am qualified as a physicist. At the moment I am working as a simulation engineer at a multinational company. I have been interested in algorithms and data structures and its implementations especially in Java since university. Later on I got acquainted with machine learning techniques, artificial intelligence, numerical methods and recipes such as solving differential equations, linear algebra, interpolation and extrapolation. These things may prove to be very very important in several fields: software engineering, research and development or investment banking. I have a special addiction to quantitative models such as the Black-Scholes model, or the Merton-model.

Take a look at my website if you are interested in these topics!