Divide and Conquer, Sorting and Searching, and Randomized Algorithms
Description
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: The primary topics in this part of the specialization are: asymptotic ("Big-oh") notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), and randomized algorithms (QuickSort, contraction algorithm for min cuts).
Who is this class for: Learners with at least a little bit of programming experience who want to learn the essentials of algorithms. In a University computer science curriculum, this course is typically taken in the third year.
Created by: Stanford University-
Taught by: Tim Roughgarden, Professor
Computer Science
Frequently asked questions
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: The primary topics in this part of the specialization are: asymptotic ("Big-oh") notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), and randomized algorithms (QuickSort, contraction algorithm for min cuts).
Who is this class for: Learners with at least a little bit of programming experience who want to learn the essentials of algorithms. In a University computer science curriculum, this course is typically taken in the third year.
Created by: Stanford University-
Taught by: Tim Roughgarden, Professor
Computer Science
Каждый курс — это интерактивный учебник, который содержит видеоматериалы, тесты и проекты.
Помощь сокурсниковОбщайтесь с тысячами других учащихся: обсуждайте идеи, материалы курса и помогайте друг другу осваивать новые понятия.
СертификатыПолучите документы о прохождении курсов и поделитесь своим успехом с друзьями, коллегами и работодателями.
Stanford University The Leland Stanford Junior University, commonly referred to as Stanford University or Stanford, is an American private research university located in Stanford, California on an 8,180-acre (3,310 ha) campus near Palo Alto, California, United States.Syllabus
WEEK 1
Week 1
Introduction; "big-oh" notation and asymptotic analysis.
13 videos, 3 readings expand
- Материал для самостоятельного изучения: Welcome and Week 1 Overview
- Материал для самостоятельного изучения: Overview, Resources, and Policies
- Материал для самостоятельного изучения: Lecture slides
- Video: Why Study Algorithms?
- Video: Integer Multiplication
- Video: Karatsuba Multiplication
- Video: About the Course
- Video: Merge Sort: Motivation and Example
- Video: Merge Sort: Pseudocode
- Video: Merge Sort: Analysis
- Video: Guiding Principles for Analysis of Algorithms
- Video: The Gist
- Video: Big-Oh Notation
- Video: Basic Examples
- Video: Big Omega and Theta
- Video: Additional Examples [Review - Optional]
Graded: Problem Set #1
Graded: Programming Assignment #1
WEEK 2
Week 2
Divide-and-conquer basics; the master method for analyzing divide and conquer algorithms.
11 videos, 2 readings expand
- Материал для самостоятельного изучения: Week 2 Overview
- Video: O(n log n) Algorithm for Counting Inversions I
- Video: O(n log n) Algorithm for Counting Inversions II
- Video: Strassen's Subcubic Matrix Multiplication Algorithm
- Video: O(n log n) Algorithm for Closest Pair I [Advanced - Optional]
- Video: O(n log n) Algorithm for Closest Pair II [Advanced - Optional]
- Video: Motivation
- Video: Formal Statement
- Video: Examples
- Video: Proof I
- Video: Interpretation of the 3 Cases
- Video: Proof II
- Материал для самостоятельного изучения: Optional Theory Problems (Batch #1)
Graded: Problem Set #2
Graded: Programming Assignment #2
WEEK 3
Week 3
The QuickSort algorithm and its analysis; probability review.
9 videos, 1 reading expand
- Материал для самостоятельного изучения: Week 3 Overview
- Video: Quicksort: Overview
- Video: Partitioning Around a Pivot
- Video: Correctness of Quicksort [Review - Optional]
- Video: Choosing a Good Pivot
- Video: Analysis I: A Decomposition Principle
- Video: Analysis II: The Key Insight
- Video: Analysis III: Final Calculations
- Video: Probability Review I
- Video: Probability Review II
Graded: Problem Set #3
Graded: Programming Assignment #3
WEEK 4
Week 4
Linear-time selection; graphs, cuts, and the contraction algorithm.
11 videos, 3 readings expand
- Материал для самостоятельного изучения: Week 4 Overview
- Video: Randomized Selection - Algorithm
- Video: Randomized Selection - Analysis
- Video: Deterministic Selection - Algorithm [Advanced - Optional]
- Video: Deterministic Selection - Analysis I [Advanced - Optional]
- Video: Deterministic Selection - Analysis II [Advanced - Optional]
- Video: Omega(n log n) Lower Bound for Comparison-Based Sorting [Advanced - Optional]
- Video: Graphs and Minimum Cuts
- Video: Graph Representations
- Video: Random Contraction Algorithm
- Video: Analysis of Contraction Algorithm
- Video: Counting Minimum Cuts
- Материал для самостоятельного изучения: Optional Theory Problems (Batch #2)
- Материал для самостоятельного изучения: Info and FAQ for final exam
Graded: Problem Set #4
Graded: Programming Assignment #4
Graded: Final Exam
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.