Intro to Algorithm Analysis

Chapter

  • 1

    Chapter 1

    Study of an analysis of one of the most basic problems in CS - sorting. Introduction to all basic kinds of analysis of algorithms and asymptotic analysis and notations.

    Estimated time: ~50 Minutes
  • 2

    Chapter 2

    Discussion of recurrences and recursion trees in the context of merge sort and analyzing the performance of merge sort. It also introduces Big-O notations in the context of algorithm analysis.

    Estimated time: ~36 Minutes
  • 3

    Chapter 3

    Introduces and analyzes various different types of sorting algorithms. This chapter discusses their efficiency, how they compare to each other and how they are different from each other. It covers bubble sort, quick sort and selection sort. It also introduces the problem of searching, discusses linear and binary search algorithms and their efficiency through analyzing them.

    Estimated time: ~40 Minutes
  • 4

    Chapter 4

    Introduction to the Divide and Conquer Paradigm of solving problems, in the context of algorithm analysis using recurrences and recursion trees. The most common divide and conquer solutions are introduced - merge sort, binary search, powering a number and Fibonacci.

    Estimated time: ~30 Minutes
  • 5

    Chapter 5

    Introduction to a common problem in CS - the symbol-table problem and how it is solved through hashing. Discusses hashing concepts such as choosing a hash function and properties of a good hash function, collision resolution through chaining. Presents analysis of the speed of hashing operations.

    Estimated time: ~41 Minutes
  • Exam

    Locked

    You must complete all chapters before taking the course exam.

Concept

  • 1

    Concept 1

    Introduces the concept of divide and conquer in the context of merge sort.

    Estimated time: ~7 Minutes
  • 2

    Concept 2

    Introduces the problem of searching through a sorted array efficiently. The solution is binary search - a very efficient searching algorithm for sorted lists.

    Estimated time: ~4 Minutes
  • 3

    Concept 3

    Introduction to the "powering a number" problem. That is a classic problem that can be solved via divide and conquer.

    Estimated time: ~5 Minutes
  • 4

    Concept 4

    Fibonacci numbers are an important and very interesting mathematical concept - they are found everywhere in nature. The algorithm for computing them is introduced in this concept.

    Estimated time: ~5 Minutes
  • 5

    Concept 5

    This concept introduces a more efficient algorithm to compute Fibonacci. It also introduces the algorithm analysis as well as explains why the bottom up algorithm is more efficient.

    Estimated time: ~7 Minutes
  • Test

    Chapter 4 Test

    Take the chapter 4 test and unlock the Divide And Conquer badge.


Concept 4: Fibonacci

Fibonacci numbers are an important and very interesting mathematical concept - they are found everywhere in nature. The algorithm for computing them is introduced in this concept.

edit

You are making progress towards completing chapter 4 and unlocking the Divide And Conquer Badge

This badge is worth: 50 Points

For this concept you will only be watching a portion of the video: - .

Ask a Question

Send me an email when someone posts a reply

Questions & Answers

No one has said anything yet!
Start the discussion by asking a question.

Quiz Questions

Concept 4: Fibonacci