
Level: Intermediate
💻Dynamic Programming and Greedy Algorithms Masterclass with Python
Trace and write recursive solutions, convert brute force into memoized and tabulated DP, recognize the major DP patterns on sight, choose correctly between greedy and DP, and ship a working Huffman file compressor.
5.0
3.6k+ learners
Duration
4 hr 15 min
Learners
3.6k+ Enrolled Students
Session Recording
Lifetime Access
Post Session
Mentor support
Session Schedule
Get Life Time Access
₹0
₹399
Discount 100% off
Course Fee
₹0
Worth of
₹399
Discount
100% Off
Includes
• Expert Designed Curriculum
• Doubt Clearing Session
• Forever Community Access
After this course, you can
Solve DP problems confidently
Apply greedy strategies
Optimize recursive solutions
Crack coding interviews
Course Curriculum
Expand or explore the full learning path.
Lessons
Start here after enrolling. These lessons form the core learning path for the course.
Recursive Thinking: Base Case, Recursive Case, and Trusting the Leap of Faith
The Call Stack: What Python Actually Does When a Function Calls Itself
Divide & Conquer: Splitting Problems Until They Solve Themselves
Backtracking: Try, Fail, Undo, Try Again
Combination Sum and Word Search: Pruning the Search Tree
N-Queens: The Classic That Makes Backtracking Click
Overlapping Subproblems: Why Naive Recursion Explodes
Memoization: Caching Answers With a Dictionary and `@lru_cache`
Tabulation: Building the Answer Bottom-Up With a Table
State and Transitions: How to Define "What Am I Actually Computing?"
Space Optimization: When a Full Table Becomes Two Variables
A Repeatable 4-Step Recipe for Solving Any DP Problem
Fibonacci Three Ways: Naive, Memoized, Tabulated
Climbing Stairs: Your First "This Is Just Fibonacci in Disguise" Moment
House Robber: Choices, Constraints, and Max of Two Paths
Min Cost Climbing Stairs: Reading a Problem and Spotting the State
Practice Lab: Solving Fresh 1D Problems Using the Recipe
Unique Paths: Counting Routes Through a Grid
Minimum Path Sum: From Counting to Optimizing
Grids with Obstacles: Handling Edge Cases Without Tears
Building and Filling 2D Tables in Python the Right Way
Rolling Arrays: Shrinking a 2D Table Down to One Row
0/1 Knapsack: The Pattern Behind a Hundred Problems
Longest Common Subsequence: Comparing Two Strings With a Table
Longest Increasing Subsequence: O(n²) First, Then the Clever O(n log n)
Interval DP: Matrix Chain and Burst-Balloons Style Thinking
Tree DP: House Robber III and Recursion Meeting DP
Pattern-Matching Lab: Given a New Problem, Name Its Pattern
The Greedy Mindset: Local Best vs Global Best, and When Greedy Fails
Activity Selection & Interval Scheduling: Sort, Pick, Repeat
Jump Game: Greedy Reach vs DP, and Why Greedy Wins Here
Huffman Coding: Building a Compressor With a Heap
Greedy vs DP: A Decision Guide for Choosing Your Weapon
Mini Project: A Text File Compressor Using Huffman Coding
Live Session Content
This topic will be taught live in an interactive session, allowing you to engage with the instructor and ask questions in real time. While recordings will be available, attending live offers the best learning experience.
Post Session Study Material
This section will be unlocked after the session. You'll get access to exclusive bonus content, additional examples, and on-demand resources to support continuous learning and deeper understanding.
Daily DP Coding Practice
30 min
Complexity Analysis Exercises
25 min
DP Pattern Cheat Sheet
15 min
Problem Explanation Notes
20 min
Knapsack and Resource Optimization
45 min
Path Optimization Implementation
45 min
Scheduling Optimization Problems
45 min
DP Solution Documentation
30 min
Requirements
What you should have before starting the course.
Basic Python programming knowledge
Understanding of recursion
Familiarity with data structures
Willingness to solve coding problems
Tools you are going to use
C++
Python
Java
Codeforces

LeetCode
Learn From Expert Instructor
Meet the mentors leading the live sessions.

Aarav Sharma
Senior Frontend Engineer, StudioLabs
Aarav has mentored 1200+ learners and specializes in production UI systems and scalable frontend architecture.
LinkedIn
Ananya Mehta
Design Technologist, CraftLabs
Ananya blends design and code to help learners ship portfolio-ready projects.
LinkedIn
Kabir Sayed
Frontend Mentor, PixelWorks
Kabir focuses on clean code, accessibility, and practical frontend delivery.
LinkedInYou should join this course if you
Students & Fresh Graduates
Build a strong portfolio
Learn from live mentors
Get feedback on your work
Working Professionals
Upgrade frontend skills
Ship real projects
Join a peer community
Career Switchers
Structured learning path
Hands-on practice
Guided sessions
Freelancers & Creators
Build client-ready sites
Improve delivery speed
Learn modern workflows
What you will get after completing this course
Receive an official course completion certificate
Earn skill-focused feedback from mentors
Showcase your project in the Shattak community
Access lifetime notes and references
Stay connected with instructors for guidance
Completion bonus
Certificate access, community showcase, and lifetime mentor guidance.
Hear From Learners Who've Taken This Course
Honest feedback from learners who completed the live sessions.
4.8
24
Clear structure, solid examples, and a fast pace that keeps you engaged.
Riya Jain
B.Tech, NIT Trichy
4.6
18
Practical sessions with feedback that helped improve my portfolio.
Kabir Singh
Frontend Intern, PixelWorks
4.9
12
Loved the structure and the live walkthroughs.
M
Meera Patel
Design Graduate
Join Our Community, Ask Questions
Frequently Asked Questions
Students, working professionals, and career switchers who want to build job-ready web projects.
Basic familiarity with HTML or CSS is helpful, but the course includes beginner-friendly guidance.
Yes, recordings are shared after each live session.
Mentors provide live feedback and follow-up notes during the sessions.
Yes, you can ask questions in the community group and during live office hours.
Shattak courses are primarily self-paced and may include lessons, recordings, assignments, projects, and additional learning resources. Live sessions may also be conducted based on community demand.
Yes. If a live session is conducted for your course, you can access the recording and revisit the content at your own pace.
Yes. Shattak has a learning community where you can ask questions, interact with other learners, share your progress, and get guidance from mentors and peers.
Not always. Each course clearly mentions its requirements and the level of experience needed. Many courses are designed for complete beginners.
Yes. You can earn a course completion certificate after completing the required learning materials and submitting the required assignments or projects.
Yes. You can add your certificate to your LinkedIn profile, resume, portfolio, and other places where you want to showcase your learning and achievements. You may also use it for academic or professional purposes where applicable.
All Shattak courses are free to enroll in and start learning. After completing the course and earning your certificate, you can choose how much to pay from ₹0 to ₹10,000. Pay what you feel the learning experience was worth, with no questions asked.
You can explore courses by browsing different topics, skills, categories, or career paths. Each course page provides information about what you will learn, requirements, curriculum, and completion benefits.
Yes. Before enrolling, you can explore the course overview, curriculum, learning outcomes, requirements, and other details to understand what the course offers.
Simply open the course page and click Enroll. All courses are free to enroll in, so you can start your learning journey without paying upfront.
After enrolling, you will be redirected to your course workspace. From there, you can access your lessons and follow the learning path step by step.
Most courses allow you to learn at your own pace. However, some assignments, live sessions, or certification requirements may have specific deadlines.
Depending on the course, you may get access to: • Self-paced lessons • Live sessions based on community demand • Session recordings • Assignments and hands-on projects • Bonus learning resources • Mentor and peer community support • Doubt-clearing and guidance • Course completion certificates
You can ask questions through the learning community and connect with other learners. Depending on the course, you can also receive guidance from mentors and peers.
After completing the required lessons, assignments, and other course requirements, you can submit your work for certification. Once certified, you can access and share your certificate.
If you are an industry professional or expert and want to teach on Shattak, you can apply to become a mentor and create a course or learning experience based on your expertise.
Starting From
TBD
Duration
4 hr 15 min
Get Life Time Access
₹0
₹399
100% off
Get Life Time Access
₹0
₹399
100% off