Packt

Advanced Algorithms, Dynamic Programming & Graph Algorithms

Ends soon: Grow your skills with Coursera Plus for $239/year (usually $399). Save now.

Packt

Advanced Algorithms, Dynamic Programming & Graph Algorithms

Included with Coursera Plus

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Learn advanced heap operations to solve optimization problems in algorithmic challenges.

  • Understand and apply dynamic programming techniques to solve complex recursive problems.

  • Implement advanced graph algorithms like Dijkstra’s, Bellman-Ford, and Prim’s Algorithm for real-world problems.

  • Master bit manipulation techniques for efficient data handling in coding challenges.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

April 2026

Assessments

12 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

Build your subject-matter expertise

This course is part of the Data Structures & Algorithms in Java + 150 Leetcode Problems Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 10 modules in this course

In this module, we will explore heap data structures, including their fundamental operations like insertion, deletion, and heapify. We will implement heaps in Java and apply them to real-world problems such as finding the kth largest element and solving the "Last Stone Weight" problem. By the end of this section, you will have hands-on experience solving various heap-based problems.

What's included

13 videos2 readings1 assignment

In this module, we will delve into dynamic programming (DP) techniques, understanding their theoretical foundation and practical use. We will solve a variety of problems, from simple ones like "Climbing Stairs" to more complex ones such as "Longest Palindromic Substring." By the end, you'll be equipped to apply dynamic programming to tackle a wide range of algorithmic challenges.

What's included

17 videos1 assignment

In this module, we will explore bit manipulation techniques and how they can optimize problem-solving. You'll learn the key bitwise operators and solve practice problems, from finding a single number in an array to dividing integers using bit shifts. By the end of this section, you'll be proficient in using bitwise operations for efficient solutions.

What's included

10 videos1 assignment

In this module, we will focus on the Disjoint Set (Union-Find) data structure, learning how it helps efficiently solve problems in graph theory. We'll implement Union-Find with optimizations to improve its performance and apply it to problems like cycle detection and finding connected components. This section will give you the tools to work with graph-based problems effectively.

What's included

7 videos1 assignment

In this module, we will dive into graph theory, starting with essential concepts like directed vs. undirected graphs and weighted vs. unweighted graphs. You'll learn and implement graph traversal techniques like BFS and DFS, along with optimization algorithms such as Dijkstra’s and Prim’s. By the end of this section, you’ll be able to solve various graph-related problems with confidence.

What's included

48 videos1 assignment

In this module, we will explore the principles of greedy algorithms and their applications in optimization problems. You’ll tackle practice problems like "Best Time to Buy and Sell Stock II" and "Candy," learning how greedy strategies help find the most efficient solutions. By the end of this section, you’ll be able to apply greedy algorithms to real-world optimization challenges.

What's included

4 videos1 assignment

In this module, we will explore the fundamentals of game theory, focusing on strategic decision-making in competitive scenarios. You will solve problems such as "Nim’s Game," learning how to use optimal moves to determine the winner. By the end, you will have a solid understanding of game theory and how to apply it to solve problems in competitive environments.

What's included

1 video1 assignment

In this module, we will delve into advanced string matching algorithms, focusing on the Knuth-Morris-Pratt (KMP) algorithm. You will learn both brute force and optimized methods for string matching and subsequences. By the end of this section, you’ll be able to solve complex string matching problems using efficient algorithms.

What's included

10 videos1 assignment

In this module, we will explore various string problems, starting with the "Longest Palindromic Substring." You'll learn how to solve string manipulation problems using dynamic programming and optimize your solutions for better performance. By the end of this section, you'll have the skills to tackle a range of challenging string problems efficiently.

What's included

1 video1 assignment

In this module, we will focus on segment trees, an advanced data structure that is essential for solving range queries and updates. You will learn how to build and implement segment trees, answering complex range queries efficiently. By the end of this section, you’ll be capable of using segment trees to optimize a variety of range-based problems.

What's included

7 videos1 reading3 assignments

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Packt - Course Instructors
Packt
1,626 Courses472,392 learners

Offered by

Packt

Explore more from Algorithms

Why people choose Coursera for their career

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions