К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Dynamic Programming, Greedy Algorithms · LearnSpace
Назад в каталог
courseraПрограммирование

Dynamic Programming, Greedy Algorithms

Курс от University of Colorado Boulder
Продвинутый≈ 38.3 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course covers basic algorithm design techniques such as divide and conquer, dynamic programming, and greedy algorithms. It concludes with a brief introduction to intractability (NP-completeness) and using linear/integer programming solvers for solving optimization problems. We will also cover some advanced topics in data structures. This course can be taken for academic credit as part of CU Boulder’s MS in Data Science or MS in Computer Science degrees offered on the Coursera platform. These fully accredited graduate degrees offer targeted courses, short 8-week sessions, and pay-as-you-go tuition. Admission is based on performance in three preliminary courses, not academic history. CU degrees on Coursera are ideal for recent graduates or working professionals. Learn more: MS in Data Science: https://www.coursera.org/degrees/master-of-science-data-science-boulder MS in Computer Science: https://coursera.org/degrees/ms-computer-science-boulder

Навыки, которые вы освоите

AlgorithmsTheoretical Computer ScienceDesign StrategiesAnalysisPython ProgrammingQuantum computingComputational ThinkingData StructuresApplied Mathematics

Программа курса

4 модулей · 83 учебных материалов

01Divide and Conquer Algorithms33 материалов

Course Overview

Course Updates and Accessibility SupportЧтениеEarn Academic Credit for Your Work! ЧтениеCourse SupportЧтениеAssessment ExpectationsЧтение

Учитесь у экспертов

Sriram Sankaranarayanan

Professor

Dynamic Programming, Greedy Algorithms
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 38.3 ч

4 модулей

Язык: Английский

Субтитры: Арабский, Французский, Бенгальский, Узбекский, Украинский, Китайский (Китай), Греческий, Итальянский, Бразильский португальский, Вьетнамский, Нидерландский, Корейский, Немецкий, Пушту, Урду, Русский, Тайский, Индонезийский, Шведский, Турецкий, Азербайджанский, Испанский, Дари, Хинди, Японский, Казахский, Венгерский, Польский

Часть программы вашего университета
AI Citation and AcknowledgementЧтение
Reading: Important PrerequisitesЧтение
Logistics: Textbook and ReadingsЧтение
Introduce Yourself!Обсуждение
Important Specialization InformationЧтение

Overview of Module 1

Overview of Module 1Чтение

What Are Divide and Conquer Algorithms?

What Are Divide and Conquer Algorithms?ВидеоCLRS Chapter 4Чтение

Max Subarray Problem Using Divide and Conquer

Max Subarray Problem Using Divide and ConquerВидеоCLRS Chapter 4.1ЧтениеAI Policy QuizЗаданиеMax Subarray ProblemЗадание

Karatsuba’s Multiplication Algorithm

Karatsuba’s Multiplication AlgorithmВидеоJupyter Notebook on Karatsuba's AlgorithmЧтениеKaratsuba's Multiplication AlgorithmЗадание

Master Method Revisited

Master Method RevisitedВидеоCLRS Chapters 4.3 - 4.5ЧтениеMaster MethodЗадание

Fast Fourier Transform Algorithm

FFT Part 1: Introduction and Complex NumbersВидеоBasics of Complex NumbersЧтениеFFT Part 2: Definition and Interpretation of Discrete Fourier TransformsВидеоFourier TransformsЧтениеFFT Part 3: Divide and Conquer Algorithm for FFTВидеоApplication # 1 : Fast Polynomial Multiplication using FFT ВидеоApplication # 2: Data Analysis using FFTВидеоFast Fourier TransformЧтениеComplex Numbers and Roots of UnityЗаданиеFFT Algorithm and ApplicationsЗадание

Problem Set

Problem Set 1Программирование
02Dynamic Programming Algorithms18 материалов

Overview of Module 2

Overview of Module 2Чтение

Introduction to Dynamic Programming + Rod Cutting Problem

Introduction to Dynamic Programming + Rod Cutting ProblemВидеоRod Cutting ProblemЧтениеRod Cutting Problem and RecurrenceЗадание

Rod Cutting Problem: Memoization

Rod Cutting Problem: MemoizationВидеоMemoization ЧтениеMemoization Задание

Coin Changing Problem

Coin Changing ProblemВидеоCoin Changing ProblemЧтениеCoinchanging ProblemЗадание

Knapsack Problem

Knapsack ProblemВидеоJupyter NotebookЧтениеKnapsack ProblemЗадание

When Optimal Substructure Fails

When Optimal Substructure FailsВидео

Dynamic Programming: Longest Common Subsequence

Dynamic Programming: Longest Common SubsequenceВидеоCLRS Chapter 15.4ЧтениеLongest Common SubsequenceЗадание

Problem Set

Problem Set 2Программирование
03Greedy Algorithms13 материалов

Overview of Module 3

Overview of Module 3Чтение

Introduction to Greedy Algorithms

Introduction to Greedy AlgorithmsВидеоCLRS Chapter 16ЧтениеGreedy AlgorithmsЗадание

Greedy Interval Scheduling

Greedy Interval SchedulingВидеоCLRS Chapters 16.1 and 16.2ЧтениеGreedy Interval SchedulingЗадание

Prefix Codes and Optimal Prefix Codes

Prefix CodesВидеоHuffman CodesВидеоHuffman Codes: Proof of Optimality ВидеоCLRS Chapter 16.3ЧтениеHuffman CodesЗадание

Problem Set

Problem Set 3Программирование
04Intractability and Supplement on Quantum Computing19 материалов

Overview of Module 4

Overview of Module 4Чтение

Decision Problems and Languages

Decision Problems and LanguagesВидеоCLRS Chapter 34 ЧтениеDecision Problems and LanguagesЗадание

Polynomial Time Problems

Polynomial Time ProblemsВидеоCLRS chapter 34.1ЧтениеPolynomial Time and CertificatesЗадание

NP Definition and NP Completeness

NP DefinitionВидеоNP Completeness and ReductionsВидеоCLRS Chapter 34.2 and 34.3ЧтениеNP Completeness ReductionsЗадание

NP Complete Problems

NP Complete Problems: ExamplesВидеоCLRS Chapter 34.5ЧтениеNP Completeness ProblemsЗадание

Supplementary Lectures: Quantum Computing

Computation and PhysicsВидеоQubits and OperationsВидеоBell's InequalityВидеоGrover's Search AlgorithmВидео

Programming Assignment

Problem Set 4Программирование