Coursera
  • Online DegreeExplore Bachelor’s & Master’s degrees
  • MasterTrack™Earn credit towards a Master’s degree
  • University CertificatesAdvance your career with graduate-level learning
Find your New CareerFor EnterpriseFor Universities
  • Browse
  • Top Courses
  • Log In
  • Join for Free
    Coursera
    • Browse
    • Dynamic Programming

    Filter by

    173 results for "dynamic programming"

    • Placeholder
      Stanford University

      Algorithms

      Skills you'll gain: Algorithms, Theoretical Computer Science, Computer Science, Mathematics, Data Structures, Graph Theory, Computer Programming, Data Management, Probability & Statistics, Computational Thinking, Probability Distribution, Entrepreneurship, General Statistics, Leadership and Management, Machine Learning, Mathematical Theory & Analysis, Operations Research, Problem Solving, Research and Design, Strategy and Operations

      4.8

      (5.6k reviews)

      Intermediate · Specialization · 3-6 Months

    • Placeholder
      Stanford University

      Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

      Skills you'll gain: Algorithms, Computer Science, Theoretical Computer Science, Computer Programming, Data Management, Data Structures, Machine Learning, Mathematical Theory & Analysis, Operations Research, Research and Design, Strategy and Operations

      4.8

      (1.2k reviews)

      Intermediate · Course · 1-4 Weeks

    • Placeholder
      University of Colorado Boulder

      Dynamic Programming, Greedy Algorithms

      Skills you'll gain: Algorithms, Theoretical Computer Science, Operations Research, Research and Design, Strategy and Operations, Computer Programming, Mathematical Theory & Analysis, Mathematics, Computational Logic, Data Management, Data Structures, Operating Systems, Other Programming Languages, Programming Principles, System Programming, Python Programming

      4.4

      (48 reviews)

      Advanced · Course · 1-4 Weeks

    • Free

      Placeholder
      Princeton University

      Algorithms, Part I

      Skills you'll gain: Algorithms, Computer Programming, Data Structures, Java Programming, Theoretical Computer Science, Computational Thinking, Data Management, Entrepreneurship, Graph Theory, Leadership and Management, Mathematics, Mobile Development, Operations Research, Problem Solving, Research and Design, Strategy and Operations

      4.9

      (10.3k reviews)

      Intermediate · Course · 3-6 Months

    • Placeholder
      Rice University

      Algorithmic Thinking (Part 2)

      Skills you'll gain: Algorithms, Theoretical Computer Science, Mathematical Theory & Analysis

      4.7

      (207 reviews)

      Intermediate · Course · 1-4 Weeks

    • Placeholder
      DeepLearning.AI

      Natural Language Processing with Probabilistic Models

      Skills you'll gain: Machine Learning, Natural Language Processing, Python Programming, Statistical Programming, Statistical Machine Learning, Artificial Neural Networks, Machine Learning Algorithms, Probability & Statistics, Algorithms, Computer Graphics, Computer Programming, Deep Learning, General Statistics, Human Computer Interaction, Markov Model, Operations Research, Research and Design, Strategy and Operations, Theoretical Computer Science

      4.7

      (1.5k reviews)

      Intermediate · Course · 1-4 Weeks

    • Placeholder
      Placeholder
      University of Alberta

      Fundamentals of Reinforcement Learning

      Skills you'll gain: Machine Learning, Reinforcement Learning, Machine Learning Algorithms, Python Programming, Statistical Programming, Markov Model, Computer Programming, Mathematics, Operations Research, Research and Design, Strategy and Operations

      4.8

      (2.5k reviews)

      Intermediate · Course · 1-3 Months

    • Placeholder
      Placeholder
      University of California San Diego

      Algorithmic Toolbox

      Skills you'll gain: Algorithms, Computer Programming, Theoretical Computer Science, C Programming Language Family, Computational Thinking, Entrepreneurship, Full-Stack Web Development, Leadership and Management, Mathematics, Problem Solving, Research and Design, Software Testing, Web Development

      4.6

      (12.1k reviews)

      Intermediate · Course · 1-3 Months

    • Placeholder
      Placeholder
      University of Alberta

      Sample-based Learning Methods

      Skills you'll gain: Machine Learning, Reinforcement Learning, Business Psychology, Markov Model, Machine Learning Algorithms, Entrepreneurship, Leadership and Management, Planning, Software Architecture, Software Engineering, Supply Chain and Logistics, Theoretical Computer Science

      4.8

      (1.2k reviews)

      Intermediate · Course · 1-3 Months

    • Placeholder
      Placeholder
      University of Cape Town

      Julia Scientific Programming

      Skills you'll gain: Computer Programming, Computational Thinking, Data Analysis, Data Visualization, General Statistics, Other Programming Languages, Plot (Graphics), Probability & Statistics, Statistical Tests, Theoretical Computer Science

      4.4

      (416 reviews)

      Beginner · Course · 1-4 Weeks

    • Placeholder
      Placeholder
      Columbia University

      Decision Making and Reinforcement Learning

      Skills you'll gain: Deep Learning, Machine Learning, Reinforcement Learning

      Intermediate · Course · 1-3 Months

    • Placeholder
      Placeholder
      Columbia University

      Advanced Topics in Derivative Pricing

      Skills you'll gain: Finance, Risk Management, Investment Management, Accounting, Audit, Computer Programming

      4.5

      (11 reviews)

      Intermediate · Course · 1-3 Months

    Searches related to dynamic programming

    dynamic programming, greedy algorithms
    greedy algorithms, minimum spanning trees, and dynamic programming
    1234…15

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

      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.‎

      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
      Placeholder
      Arts and Humanities
      338 courses
      Placeholder
      Business
      1095 courses
      Placeholder
      Computer Science
      668 courses
      Placeholder
      Data Science
      425 courses
      Placeholder
      Information Technology
      145 courses
      Placeholder
      Health
      471 courses
      Placeholder
      Math and Logic
      70 courses
      Placeholder
      Personal Development
      137 courses
      Placeholder
      Physical Science and Engineering
      413 courses
      Placeholder
      Social Sciences
      401 courses
      Placeholder
      Language Learning
      150 courses

      Coursera Footer

      Learn Something New

      • Learn a Language
      • Learn Accounting
      • Learn Coding
      • Learn Copywriting
      • Learn HR
      • Learn Public Relations
      • Boulder MS Data Science
      • Illinois iMBA
      • Illinois MS Computer Science
      • UMich MS in Applied Data Science

      Popular Data Science Topics

      • Artificial Intelligence
      • Data Analysis
      • Data Engineering
      • Data Science
      • Excel
      • Machine Learning
      • Python
      • Power BI
      • R Programming
      • SQL

      Popular Computer Science & IT Topics

      • Blockchain
      • Coding
      • Computer Science
      • Cybersecurity
      • Full Stack Web Development
      • IT
      • Java
      • Software Engineering
      • Web Design
      • Web Development

      Popular Business Topics

      • Accounting
      • Business Finance
      • Communication Skills
      • Leadership & Management
      • Marketing
      • Product Management
      • Project Management
      • UX Design
      • UX Research
      • Writing

      Coursera

      • About
      • What We Offer
      • Leadership
      • Careers
      • Catalog
      • Coursera Plus
      • Professional Certificates
      • MasterTrack® Certificates
      • Degrees
      • For Enterprise
      • For Government
      • For Campus
      • Become a Partner
      • Coronavirus Response
      • Free Courses
      • All Courses

      Community

      • Learners
      • Partners
      • Beta Testers
      • Translators
      • Blog
      • Tech Blog
      • Teaching Center

      More

      • Press
      • Investors
      • Terms
      • Privacy
      • Help
      • Accessibility
      • Contact
      • Articles
      • Directory
      • Affiliates
      • Modern Slavery Statement
      Learn Anywhere
      Placeholder
      Placeholder
      Placeholder
      © 2023 Coursera Inc. All rights reserved.
      • Placeholder
      • Placeholder
      • Placeholder
      • Placeholder
      • Placeholder
      • Placeholder