• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
  • Online Degrees
  • Careers
  • Log In
  • Join for Free
    Coursera
    • Browse
    • Dynamic Programming

    Dynamic Programming Courses Online

    Master dynamic programming techniques for solving complex problems. Learn to break down problems into simpler subproblems for efficient solutions.

    Skip to search results

    Filter by

    Subject
    Required
     *

    Language
    Required
     *

    The language used throughout the course, in both instruction and assessments.

    Learning Product
    Required
     *

    Build job-relevant skills in under 2 hours with hands-on tutorials.
    Learn from top instructors with graded assignments, videos, and discussion forums.
    Learn a new tool or skill in an interactive, hands-on environment.
    Get in-depth knowledge of a subject by completing a series of courses and projects.
    Earn career credentials from industry leaders that demonstrate your expertise.
    Earn career credentials while taking courses that count towards your Master’s degree.
    Earn your Bachelor’s or Master’s degree online for a fraction of the cost of in-person learning.
    Complete graduate-level learning without committing to a full degree program.
    Earn a university-issued career credential in a flexible, interactive format.

    Level
    Required
     *

    Duration
    Required
     *

    Skills
    Required
     *

    Subtitles
    Required
     *

    Educator
    Required
     *

    Explore the Dynamic Programming Course Catalog

    • Status: Free Trial
      Free Trial
      L

      LearnQuest

      Introduction to Java

      Skills you'll gain: Eclipse (Software), Java, Java Programming, Integrated Development Environments, Development Environment, Software Installation, Computer Programming, Programming Principles, Program Development, Object Oriented Programming (OOP)

      4.6
      Rating, 4.6 out of 5 stars
      ·
      2.1K reviews

      Beginner · Course · 1 - 4 Weeks

    • Status: New
      New
      Status: Free Trial
      Free Trial
      I

      IBM

      Generative AI for Mobile App Developers

      Skills you'll gain: Prompt Engineering, Generative AI, Large Language Modeling, ChatGPT, AI Personalization, Mobile Development, Data Ethics, OpenAI, Artificial Intelligence, Software Development Tools, Software Testing, Test Automation, Software Development, Machine Learning Methods, DevSecOps, Application Security, CI/CD, Cloud Applications, Natural Language Processing, Image Analysis

      4.7
      Rating, 4.7 out of 5 stars
      ·
      6.9K reviews

      Advanced · Specialization · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      G

      Google

      Process Data from Dirty to Clean

      Skills you'll gain: Data Cleansing, Sampling (Statistics), Data Integrity, Data Quality, Data Validation, Sample Size Determination, Data Analysis, Data Manipulation, SQL, Data Transformation, Spreadsheet Software

      4.8
      Rating, 4.8 out of 5 stars
      ·
      18K reviews

      Beginner · Course · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      I

      IBM

      IBM Front-End Developer

      Skills you'll gain: Bootstrap (Front-End Framework), HTML and CSS, Software Development Life Cycle, Software Architecture, User Centered Design, Cloud-Native Computing, React Redux, NoSQL, Git (Version Control System), GitHub, Webpack, Application Development, MongoDB, React.js, Agile Methodology, Software Design, Front-End Web Development, JavaScript Frameworks, Browser Compatibility, Interviewing Skills

      4.6
      Rating, 4.6 out of 5 stars
      ·
      6.5K reviews

      Beginner · Professional Certificate · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      I

      IBM

      Generative AI for Software Developers

      Skills you'll gain: Prompt Engineering, Generative AI, Large Language Modeling, ChatGPT, Data Ethics, OpenAI, Artificial Intelligence, Software Development Tools, Software Testing, Test Automation, Software Development, DevSecOps, Application Security, CI/CD, Natural Language Processing, Code Review, Program Development, Software Architecture, Content Creation, Image Analysis

      4.7
      Rating, 4.7 out of 5 stars
      ·
      6.9K reviews

      Intermediate · Specialization · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      I

      IBM

      IBM iOS and Android Mobile App Developer

      Skills you'll gain: React Native, Prompt Engineering, HTML and CSS, Software Development Life Cycle, iOS Development, Flutter (Software), Software Architecture, Swift Programming, Apple Xcode, Mobile Development, Android Studio, User Centered Design, Android Development, Apple iOS, React Redux, Git (Version Control System), GitHub, Mobile Development Tools, React.js, AI Personalization

      4.6
      Rating, 4.6 out of 5 stars
      ·
      6.2K reviews

      Beginner · Professional Certificate · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      U

      University of Pennsylvania

      Business and Financial Modeling

      Skills you'll gain: Risk Modeling, Financial Statements, Probability Distribution, Mathematical Modeling, Statistical Modeling, Portfolio Management, Regression Analysis, Business Modeling, Financial Modeling, Strategic Decision-Making, Risk Management, Presentations, Decision Making, Data Visualization, Microsoft PowerPoint, Predictive Modeling, Investment Management, Data-Driven Decision-Making, Spreadsheet Software, Google Sheets

      4.5
      Rating, 4.5 out of 5 stars
      ·
      11K reviews

      Beginner · Specialization · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      U

      University of California, Davis

      Learn SQL Basics for Data Science

      Skills you'll gain: Data Governance, Presentations, SQL, Apache Spark, Distributed Computing, Descriptive Statistics, Data Lakes, Data Storytelling, Data Analysis, Peer Review, Exploratory Data Analysis, Data Quality, Data Pipelines, Databricks, Statistical Analysis, Database Design, Complex Problem Solving, Query Languages, Data Visualization, JSON

      4.6
      Rating, 4.6 out of 5 stars
      ·
      17K reviews

      Beginner · Specialization · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      I

      IBM

      Generative AI for Business Intelligence (BI) Analysts

      Skills you'll gain: Prompt Engineering, Generative AI, ChatGPT, Interactive Data Visualization, Business Intelligence, Data Presentation, Infographics, OpenAI, Dashboard, Data Storytelling, Large Language Modeling, Artificial Intelligence, Program Development, SQL, Data Analysis, Content Creation, Business Ethics, Image Analysis, Virtual Environment, Natural Language Processing

      4.7
      Rating, 4.7 out of 5 stars
      ·
      6.8K reviews

      Intermediate · Specialization · 1 - 3 Months

    • Status: New
      New
      Status: Free Trial
      Free Trial
      I

      IBM

      IBM Java Developer

      Skills you'll gain: Spring Framework, Prompt Engineering, HTML and CSS, Cloud-Native Computing, Software Development Life Cycle, Software Architecture, Hibernate (Java), Database Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Software Design, Microservices, Object Oriented Programming (OOP), Large Language Modeling, Spring Boot, Object-Relational Mapping, Java Programming, Interviewing Skills

      4.6
      Rating, 4.6 out of 5 stars
      ·
      5.5K reviews

      Beginner · Professional Certificate · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      U

      University of California, Irvine

      Effective Problem-Solving and Decision-Making

      Skills you'll gain: Creative Problem-Solving, Problem Solving, Decision Making, Creativity, Organizational Effectiveness, Critical Thinking and Problem Solving, Strategic Decision-Making, Business Solutions, Key Performance Indicators (KPIs), Professional Development, Root Cause Analysis, Personal Development, Adaptability, Analytical Skills

      4.6
      Rating, 4.6 out of 5 stars
      ·
      7.3K reviews

      Beginner · Course · 1 - 4 Weeks

    • Status: Free Trial
      Free Trial
      U

      University of Michigan

      Applied Data Science with Python

      Skills you'll gain: Matplotlib, Network Analysis, Feature Engineering, Data Visualization Software, Interactive Data Visualization, Scientific Visualization, Pandas (Python Package), Applied Machine Learning, Supervised Learning, Text Mining, Visualization (Computer Graphics), Statistical Visualization, Scikit Learn (Machine Learning Library), Network Model, Jupyter, NumPy, Graph Theory, Data Manipulation, Natural Language Processing, Data Analysis

      4.5
      Rating, 4.5 out of 5 stars
      ·
      34K reviews

      Intermediate · Specialization · 3 - 6 Months

    Dynamic Programming learners also search

    C Programming
    Programming
    C
    Beginner Programming
    Development
    C Programming Projects
    Programming Projects
    Computer Programming
    1…101112…322

    In summary, here are 10 of our most popular dynamic programming courses

    • Introduction to Java: LearnQuest
    • Generative AI for Mobile App Developers: IBM
    • Process Data from Dirty to Clean: Google
    • IBM Front-End Developer: IBM
    • Generative AI for Software Developers: IBM
    • IBM iOS and Android Mobile App Developer: IBM
    • Business and Financial Modeling: University of Pennsylvania
    • Learn SQL Basics for Data Science: University of California, Davis
    • Generative AI for Business Intelligence (BI) Analysts: IBM
    • IBM Java Developer: IBM

    Skills you can learn in Business Strategy

    Modeling (25)
    Market (economics) (21)
    Plan (19)
    Planning (16)
    Strategic Management (16)
    Business Model (13)
    Operations Management (13)
    Analytics (12)
    Evaluation (12)
    Project Management (11)
    Supply Chain (10)
    Decision-making (9)

    Frequently Asked Questions about Dynamic Programming

    Dynamic programming is an algorithmic technique that solves optimization problems by breaking them down into simpler sub-problems. The solutions to these sub-problems are stored along the way, which ensures that each problem is only solved once. Dynamic programming has become an important technique for efficiently solving complex optimization problems in applications such as reinforcement learning for artificial intelligence (AI) and genome sequencing in bioinformatics.

    The advantages of dynamic programming can be understood in relation to other algorithms used to solve optimization problems. Like divide and conquer algorithms, dynamic programming breaks down a larger problem into smaller pieces; however, unlike divide and conquer, it saves solutions along the way so each problem is only solved once, improving the speed of this approach. By contrast, greedy algorithms also solve each problem only once, but unlike dynamic programming, it does not look back to consider all possible solutions, running the risk that the greedy algorithm will settle on a locally optimal solution that is not globally optimal.

    Ultimately, there is no single “silver bullet” algorithm that is best for every application, and different types of problems will require different techniques. However, dynamic programming’s ability to deliver globally optimal solutions with relative efficiency makes it an important part of any programmer’s skill set.‎

    Dynamic programming is a valuable career skill for programmers working on complex optimization problems in high-tech fields such as data science, artificial intelligence and machine learning, robotics, and bioinformatics. Computer scientists with the ability to find the right approaches to these high-value problems are highly sought after and compensated accordingly by leading companies in these industries. According to the Bureau of Labor Statistics, computer and information research scientists earned a median annual salary of $122,840 per year in 2019, and these jobs are expected to grow much faster than the average across the rest of the economy.‎

    Yes! There are an incredibly wide range of learning opportunities in computer science on Coursera, including courses and Specializations in algorithms and dynamic programming. Coursera lets you learn about dynamic programming remotely from top-ranked universities from around the world such as Stanford University, National Research University Higher School of Economics, and University of Alberta. And, because learners on Coursera pay a significantly lower tuition than on-campus students, you won’t need to use dynamic programming or other algorithmic techniques to determine whether it’s an optimal investment in your career.‎

    The people best suited for roles in dynamic programming are computer programmers and people with experience working with algorithms. Dynamic programming is an algorithmic technique for breaking down a problem into simpler subproblems, so it’s important that people who pursue roles in dynamic programming have experience working in fields that utilize this technique. People who work as aerospace engineers or in economics are best suited for these roles.‎

    A common career path for someone in dynamic programming is a job as a computer and information research scientist. These scientists design software systems and invent new computing languages, which they later test and present to colleagues in academic journals and conferences. Another common career path for someone studying dynamic programming is working with robotics or in computer programming.‎

    It’s important for learners to have a strong handle on algorithms, so topics related to advanced algorithms and complexity, discrete optimization, data structures and algorithms, algorithms on strings, and algorithms on graphs are extremely useful. Reinforcement learning may explore topics related to AI tools and how it is useful in game development, customer interaction, and supply chain. For learners looking to improve their computer programming skills, the fundamentals of computing may help you program and think like a computer scientist. Competitive programming is the next step up and is a great option if you want to explore topics related to dynamic programming and number and graph theories.‎

    Most people with a background in dynamic programming are hired to work in the federal government, according to the U.S. Bureau of Labor Statistics. Some people also work for computer systems and design-related services companies. Research and development companies hire people with a background in dynamic programming as well as software publishers.‎

    Online Dynamic Programming courses offer a convenient and flexible way to enhance your knowledge or learn new Dynamic Programming skills. Choose from a wide range of Dynamic Programming courses offered by top universities and industry leaders tailored to various skill levels.‎

    When looking to enhance your workforce's skills in Dynamic Programming, it's crucial to select a course that aligns with their current abilities and learning objectives. Our Skills Dashboard is an invaluable tool for identifying skill gaps and choosing the most appropriate course for effective upskilling. For a comprehensive understanding of how our courses can benefit your employees, explore the enterprise solutions we offer. Discover more about our tailored programs at Coursera for Business here.‎

    This FAQ content has been made available for informational purposes only. Learners are advised to conduct additional research to ensure that courses and other credentials pursued meet their personal, professional, and financial goals.

    Other topics to explore

    Arts and Humanities
    338 courses
    Business
    1095 courses
    Computer Science
    668 courses
    Data Science
    425 courses
    Information Technology
    145 courses
    Health
    471 courses
    Math and Logic
    70 courses
    Personal Development
    137 courses
    Physical Science and Engineering
    413 courses
    Social Sciences
    401 courses
    Language Learning
    150 courses

    Coursera Footer

    Technical Skills

    • ChatGPT
    • Coding
    • Computer Science
    • Cybersecurity
    • DevOps
    • Ethical Hacking
    • Generative AI
    • Java Programming
    • Python
    • Web Development

    Analytical Skills

    • Artificial Intelligence
    • Big Data
    • Business Analysis
    • Data Analytics
    • Data Science
    • Financial Modeling
    • Machine Learning
    • Microsoft Excel
    • Microsoft Power BI
    • SQL

    Business Skills

    • Accounting
    • Digital Marketing
    • E-commerce
    • Finance
    • Google
    • Graphic Design
    • IBM
    • Marketing
    • Project Management
    • Social Media Marketing

    Career Resources

    • Essential IT Certifications
    • High-Income Skills to Learn
    • How to Get a PMP Certification
    • How to Learn Artificial Intelligence
    • Popular Cybersecurity Certifications
    • Popular Data Analytics Certifications
    • What Does a Data Analyst Do?
    • Career Development Resources
    • Career Aptitude Test
    • Share your Coursera Learning Story

    Coursera

    • About
    • What We Offer
    • Leadership
    • Careers
    • Catalog
    • Coursera Plus
    • Professional Certificates
    • MasterTrack® Certificates
    • Degrees
    • For Enterprise
    • For Government
    • For Campus
    • Become a Partner
    • Social Impact
    • Free Courses
    • ECTS Credit Recommendations

    Community

    • Learners
    • Partners
    • Beta Testers
    • Blog
    • The Coursera Podcast
    • Tech Blog
    • Teaching Center

    More

    • Press
    • Investors
    • Terms
    • Privacy
    • Help
    • Accessibility
    • Contact
    • Articles
    • Directory
    • Affiliates
    • Modern Slavery Statement
    • Manage Cookie Preferences
    Learn Anywhere
    Download on the App Store
    Get it on Google Play
    Logo of Certified B Corporation
    © 2025 Coursera Inc. All rights reserved.
    • Coursera Facebook
    • Coursera Linkedin
    • Coursera Twitter
    • Coursera YouTube
    • Coursera Instagram
    • Coursera TikTok