YoVDO

Introduction to Algorithms

Offered By: Massachusetts Institute of Technology via MIT OpenCourseWare

Tags

Algorithms and Data Structures Courses Programming Courses Mathematical Modeling Courses Algorithms Courses Data Structures Courses Hashing Courses

Course Description

Overview

This course is an introduction to mathematical modeling of computational problems, as well as common algorithms, algorithmic paradigms, and data structures used to solve these problems. It emphasizes the relationship between algorithms and programming and introduces basic performance measures and analysis techniques for these problems.

Syllabus

1. Algorithms and Computation.
2. Data Structures and Dynamic Arrays.
Introduction to Algorithms - Problem Session 1: Asymptotic Behavior of Functions and Double-ended....
3. Sets and Sorting.
4. Hashing.
Problem Session 2 (MIT 6.006 Introduction to Algorithms, Spring 2020).
5. Linear Sorting.
Problem Session 3.
6. Binary Trees, Part 1.
7. Binary Trees, Part 2: AVL.
Problem Session 4.
8. Binary Heaps.
9. Breadth-First Search.
Quiz 1 review.
10. Depth-First Search.
11. Weighted Shortest Paths.
Problem Session 5.
12. Bellman-Ford.
Problem Session 6.
13. Dijkstra.
Problem Session 7.
14. APSP and Johnson.
Quiz 2 Review.
15. Dynamic Programming, Part 1: SRTBOT, Fib, DAGs, Bowling.
16. Dynamic Programming, Part 2: LCS, LIS, Coins.
Problem Session 8.
17. Dynamic Programming, Part 3: APSP, Parens, Piano.
18. Dynamic Programming, Part 4: Rods, Subset Sum, Pseudopolynomial.
19. Complexity.
Quiz 3 Review.
20. Course Review.
21. Algorithms—Next Steps.


Taught by

MIT OpenCourseWare

Tags

Related Courses

Design of Computer Programs
Stanford University via Udacity
Algorithms, Part I
Princeton University via Coursera
Algorithms, Part II
Princeton University via Coursera
Intro to Algorithms
Udacity
Divide and Conquer, Sorting and Searching, and Randomized Algorithms
Stanford University via Coursera