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

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

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

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

Advanced Algorithms, Dynamic Programming & Graph Algorithms

Курс от Packt
Средний≈ 24.4 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Mastering advanced algorithms is essential for solving complex problems in real-world applications. In this course, you’ll dive deep into critical concepts such as dynamic programming, graph theory, heap operations, and bit manipulation techniques. Each section builds on your knowledge, ensuring a comprehensive understanding that will be indispensable in interviews, competitive programming, and everyday coding tasks. The course begins by introducing heaps, providing hands-on lessons on implementing heaps, inserting and deleting elements, and solving problems like finding the kth largest element in an array. From there, you'll move to dynamic programming, tackling classical problems such as "Climbing Stairs," "Coin Change," and "Longest Common Subsequence," learning the techniques to optimize recursive algorithms with memorization and tabulation. You’ll also explore graph algorithms including BFS, DFS, Dijkstra's, and Bellman-Ford for shortest path solutions, as well as Minimum Spanning Trees with Prim’s Algorithm. Designed for anyone looking to deepen their algorithmic knowledge, this course is suitable for intermediate learners with a basic understanding of data structures. No prior experience with dynamic programming or advanced graph algorithms is required, but a solid grasp of programming basics will be beneficial. By the end of the course, you will be able to efficiently solve complex problems using dynamic programming, implement advanced graph algorithms, and apply heaps to optimize your solutions. You’ll also gain hands-on experience with Leetcode-style problems that are frequently encountered in technical interviews.

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

Data StructuresAlgorithmsGraph TheoryGame TheoryProblem SolvingComputational ThinkingComputer Programming

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

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

01Heaps17 материалов

Heaps

Introduction to the Course 'Advanced Algorithms, Dynamic Programming & Graph Algorithms'ЧтениеFull Specialization ResourceЧтениеIntroduction To HeapsВидеоImplementation Of HeapsВидео

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

Packt - Course Instructors

Преподаватель курса

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

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

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

Начать на Coursera

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

Обучение на Coursera

≈ 24.4 ч

10 модулей

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

Часть программы вашего университета
Insertion in HeapsВидео
Heap Insertion ImplementationВидео
Deletion in HeapsВидео
HeapifyВидео
Practice Problem 1 - Kth Largest Element In An ArrayВидео
Practice Problem 2 - Find Median from Data StreamВидео
Practice Problem 3 - Kth Largest Element In A StreamВидео
Leetcode #1046 - Last Stone Weight - JavaВидео
Leetcode #23 - Merge K Sorted ListsВидео
Leetcode #253 - Meeting Rooms IIВидео
Leetcode #347 - Top K Frequent ElementsВидео
Mastering Heaps: Properties, Implementation, and Coding ChallengesDIALOGUE
Heaps - AssessmentЗадание
02Dynamic Programming Theory + DP Practice Problems (1D + 2D + String DP)19 материалов

Dynamic Programming Theory + DP Practice Problems (1D + 2D + String DP)

Introduction to Dynamic ProgrammingВидеоPractice Problem 1 - Climbing Stairs - JavaВидеоPractice Problem 2 - Jump Game - JavaВидеоPractice Problem 3 - Coin ChangeВидеоPractice Problem 4 - Target SumВидеоPractice Problem 5 - Longest Common SubsequenceВидеоPractice Problem 6 - House RobberВидеоPractice Problem 7 - Longest Increasing SubsequenceВидеоPractice Problem 8 - Partition Equal Subset SumВидеоPractice Problem 10 - Integer ReplacementВидеоPractice Problem 11 - Decode WaysВидеоPractice Problem 12 - House Robber IIВидеоPractice Problem 13 - Min Cost Climbing StairsВидеоPractice Problem 14 - Longest Palindromic SubstringВидеоPractice Problem 15 - Word BreakВидеоPractice Problem 16 - Unique PathsВидеоPractice Problem 17 - Palindromic SubstringsВидеоBuilding Intuition for Dynamic Programming with Real-World ScenariosDIALOGUEDynamic Programming Theory + DP Practice Problems (1D + 2D + String DP) - AssessmentЗадание
03Bit Manipulation Techniques + Leetcode Practice Problems12 материалов

Bit Manipulation Techniques + Leetcode Practice Problems

Introduction to Bitwise OperatorsВидеоCommon Bitwise OperatorsВидеоLeetcode #136 - Single Number - JavaВидеоLeetcode #338 - Counting Bits - JavaВидеоLeetcode #287 - Find the Duplicate Number - JavaВидеоLeetcode #29 - Divide Two Integers - JavaВидеоLeetcode #268 - Missing Number - JavaВидеоLeetcode #191 - Number of 1 Bits - JavaВидеоLeetcode #371 - Sum Of Two Integers - JavaВидеоLeetcode #7 - Reverse Integer - JavaВидеоFundamentals of Bit Manipulation Operators in ProgrammingDIALOGUEBit Manipulation Techniques + Leetcode Practice Problems - AssessmentЗадание
04Disjoint Set Data Structure - Union Find Algorithms9 материалов

Disjoint Set Data Structure - Union Find Algorithms

Introduction to Disjoint Set Data StructureВидеоUnderstanding Disjoint Set Data StructureВидеоImplementing Disjoint Set Data Structure Part 1ВидеоUnion By Rank OptimizationВидеоUnion By Rank ImplementationВидеоPath Compression OptimizationВидеоPath Compression Optimization ImplementationВидеоWorking with Disjoint Set (Union-Find) Data StructureDIALOGUEDisjoint Set Data Structure - Union Find Algorithms - AssessmentЗадание
05Graphs Theory + Graph Practice Problems (BFS/DFS/Shortest Path Algorithm/MST)50 материалов

Graphs Theory + Graph Practice Problems (BFS/DFS/Shortest Path Algorithm/MST)

What Are GraphsВидеоDirected vs Undirected GraphsВидеоWeighted vs Unweighted GraphsВидеоTerms Of Graphs Part 1ВидеоTypes Of Graphs Part 1ВидеоTypes Of Graphs Part 2ВидеоImplementing Graphs Part 1ВидеоImplementing Graphs Part 2ВидеоGraph Implementation Part 3ВидеоGraph Adjacency Matrix DemonstrationВидеоGraph Adjacency List DemonstrationВидеоIntroduction To TraversalsВидеоBFS WorkingВидеоBFS ImplementationВидеоRotting Oranges Property SolutionВидеоBFS Property 1ВидеоBFS Over Binary Weighted GraphsВидеоIntroduction to DFSВидеоDFS Iterative ImplementationВидеоDFS Recursive ImplementationВидеоDFS Important PropertiesВидеоCycle Detection Part 1ВидеоCycle Detection Part 2ВидеоCycle Detection Part 3ВидеоCycle Detection ImplementationВидеоWhat Is Topological SortingВидеоTopological Sorting Example 1ВидеоSingle Source Shortest Path AlgorithmВидеоDijkstra's AlgorithmВидеоDijkstra's Algorithm ImplementationВидеоIntroduction To Bellman-Ford AlgorithmВидеоBellman-Ford Algorithm WorkingВидеоBellman-Ford Algorithm ImplementationВидеоIntroduction To Minimum Spanning TreeВидеоPrim's AlgorithmВидеоPrim's Algorithm ImplementationВидеоPractice Problem 1 - Course ScheduleВидеоPractice Problem 2 - Number of IslandsВидеоPractice Problem 3 - Find the Town JudgeВидеоPractice Problem 4 - Surrounded RegionsВидеоPractice Problem 5 - Number of EnclavesВидеоPractice Problem 6 - Flood FillВидеоPractice Problem 8 - Rotting OrangesВидеоPractice Problem 9 - Graph Valid TreeВидеоPractice Problem 10 - Number Of Connected Components In An Undirected GraphВидеоPractice Problem 11 - Pacific Atlantic WaterВидеоPractice Problem 12 - Alien DictionaryВидеоPractice Problem 13 - Clone GraphВидеоUnderstanding Graphs: Concepts, Representation, and TraversalsDIALOGUEGraphs Theory + Graph Practice Problems (BFS/DFS/Shortest Path Algorithm/MST) - AssessmentЗадание
06Greedy Algorithms6 материалов

Greedy Algorithms

Introduction To Greedy AlgorithmsВидеоPractice Problem 1 - Minimum Add To Make Parentheses ValidВидеоPractice Problem 2 - Best Time To Buy And Sell Stock IIВидеоPractice Problem 3 - CandyВидеоExploring Greedy Algorithms: When Do They Work?DIALOGUEGreedy Algorithms - AssessmentЗадание
07Game Theory3 материалов

Game Theory

Practice Problem 1 - Nim's GameВидеоWinning Strategies in the Names GameDIALOGUEGame Theory - AssessmentЗадание
08Advanced String Matching Algorithms12 материалов

Advanced String Matching Algorithms

Introduction To Pattern MatchingВидеоPattern Matching Brute ForceВидеоIntroduction to KMP AlgorithmВидеоKMP Algorithm Version 1 - Extra SpaceВидеоLongest Prefix Suffix Brute Force ApproachВидеоLongest Prefix Suffix Brute Force ImplementationВидеоLongest Prefix Suffix Optimized ApproachВидеоLongest Prefix Suffix Optimized Approach ImplementationВидеоKMP Algorithm - Final Optimized ApproachВидеоKMP Algorithm - Final Optimized Approach ImplementationВидеоUnderstanding Pattern Matching and KMP AlgorithmDIALOGUEAdvanced String Matching Algorithms - AssessmentЗадание
09String Problems3 материалов

String Problems

Practice Problem 1 - Longest Palindromic StringВидеоBuilding the Longest Palindrome from a StringDIALOGUEString Problems - AssessmentЗадание
10Advanced Data Structure - Segment Trees11 материалов

Advanced Data Structure - Segment Trees

Introduction to Range Sum Query ProblemВидеоIntroduction To Segment Tree - Building A Segment TreeВидеоAnswering Queries Using Segment TreesВидеоSegment Tree Updating ValuesВидеоSegment Tree Build Function ImplementationВидеоSegment Tree Query Function ImplementationВидеоSegment Tree Update Function ImplementationВидеоConclusion to the Course 'Advanced Algorithms, Dynamic Programming & Graph Algorithms'ЧтениеAdvanced Data Structure - Segment Trees - AssessmentЗаданиеFull Course Practice AssessmentЗаданиеFull Course AssessmentЗадание