This course will guide you through the essential principles of algorithms and their significance in computational problem-solving. You'll begin by exploring what an algorithm is, its core characteristics, and how it applies to real-world scenarios—from simple everyday tasks to complex computing challenges. As you progress, you will learn about the critical role algorithms play in improving efficiency and scalability across various fields. We’ll break down key concepts such as algorithmic complexity, helping you evaluate the efficiency of different approaches, which will ultimately guide your decision-making.

您将获得的技能
您将学习的工具
要了解的详细信息

添加到您的领英档案
32 项作业
了解顶级公司的员工如何掌握热门技能

该课程共有6个模块
In this module, you will master dynamic programming principles such as memoization and tabulation to optimize complex problems. You will learn how to apply these techniques by implementing the Bellman-Ford algorithm and solving optimization challenges. Additionally, you will see how to use dynamic programming and backtracking to tackle puzzles and constraint-satisfaction problems, with opportunities to integrate reinforcement learning concepts.
涵盖的内容
2个视频16篇阅读材料5个作业2个应用程序项目
2个视频•总计3分钟
- Course Overview•1分钟
- Meet Your Faculty•1分钟
16篇阅读材料•总计274分钟
- Course Introduction•2分钟
- Syllabus - Program Structure and Algorithms Part 2•10分钟
- Academic Integrity•1分钟
- Module 1: Dynamic Programming•1分钟
- Questions to Consider•5分钟
- Lesson Resources•45分钟
- Introduction to Dynamic Programming Part II•15分钟
- Lesson Resources•30分钟
- Bellman-Ford Algorithm•15分钟
- Lesson Resources•30分钟
- Dynamic Programming for Optimization•15分钟
- Lesson Resources•30分钟
- The Technique of Backtracking•15分钟
- Lesson Resources•30分钟
- Reinforcement Learning and Dynamic Programming•15分钟
- Additional Resources•15分钟
5个作业•总计20分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
2个应用程序项目•总计35分钟
- Dynamic Programming Example: Fibonacci Sequence•15分钟
- Dynamic Programming Example: The Knapsack Problem•20分钟
In this module you will explore network flow fundamentals and the max-flow min-cut theorem and their practical applications. You will master key algorithms such as Ford-Fulkerson and Push-Relabel to solve network flow problems. These techniques will be applied to real-world challenges like bipartite matching and project selection, providing a strong foundation in network optimization.
涵盖的内容
1个视频16篇阅读材料5个作业
1个视频•总计7分钟
- Push-Relabel•7分钟
16篇阅读材料•总计326分钟
- Module 2: Network Flow•1分钟
- Questions to Consider•15分钟
- Lesson Resources•30分钟
- Basics of Network Flow•5分钟
- Flow Networks, cont. •15分钟
- Lesson Resources•30分钟
- Max-Flow Min-Cut Theorem•30分钟
- Lesson Resources•30分钟
- Ford-Fulkerson Algorithm•10分钟
- Ford-Fulkerson - Steps and Application•30分钟
- Lesson Resources•30分钟
- Push-Relabel Algorithms•20分钟
- Push-Relabel: Steps and Application•20分钟
- Lesson Resources•15分钟
- Real-World Network Flow Applications•15分钟
- Additional Resources•30分钟
5个作业•总计20分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
In this module, you will gain a deep understanding of P, NP, and NP-Completeness, including how to classify and differentiate these problem types. You will master techniques for proving NP-Completeness and identifying NP-Hard problems. Additionally, you will develop and apply approximation algorithms and heuristics to tackle intractable problems, focusing on efficiency and trade-offs in complex problem-solving.
涵盖的内容
13篇阅读材料5个作业1个应用程序项目
13篇阅读材料•总计311分钟
- Module 3: Intractability•1分钟
- Questions to Consider•5分钟
- Lesson Resources•30分钟
- Fundamentals of NP-Completeness•15分钟
- Lesson Resources•30分钟
- Reductions and NP-Hard•15分钟
- Lesson Resources•30分钟
- Proving NP-Completeness•15分钟
- Lesson Resources•30分钟
- Understanding PSPACE•15分钟
- Lesson Resources•30分钟
- Extending Tractability•10分钟
- Additional Resources•85分钟
5个作业•总计20分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
1个应用程序项目•总计15分钟
- NP-Complete Problems and Intractability•15分钟
In this module, you will master the fundamentals of Bayes' Rule, including understanding its components such as prior, likelihood, posterior, and evidence. You will learn how to apply Bayes' Rule to solve probability problems and update prior information with new evidence. Additionally, you will employ Bayesian inference to analyze data.
涵盖的内容
13篇阅读材料5个作业
13篇阅读材料•总计239分钟
- Module 4: Bayes’ Rule •1分钟
- Questions to Consider•5分钟
- Lesson Resources•30分钟
- Fundamentals and Derivation•15分钟
- Lesson Resources•15分钟
- Applying Bayes' Rule for Inference•15分钟
- Lesson Resources•15分钟
- Introduction to Graphical Models•15分钟
- Lesson Resources•60分钟
- Decision Theory and Bayesian Methods•15分钟
- Lesson Resources•30分钟
- Applications in Machine Learning and AI•15分钟
- Additional Resources•8分钟
5个作业•总计20分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
In this module, you will explore the role of approximation algorithms in addressing NP-hard optimization problems by seeking near-optimal solutions within a practical time frame. You will learn to evaluate the performance of these algorithms using performance ratios to gauge their proximity to the optimal solution. Through examples such as the Vertex Cover, Traveling Salesman, Set Covering, and Subset Sum Problems, you will gain hands-on experience in applying approximation algorithms.
涵盖的内容
17篇阅读材料7个作业
17篇阅读材料•总计286分钟
- Module 5: Approximation Algorithms•1分钟
- Questions to Consider•5分钟
- Lesson Resources•30分钟
- Basics of Approximation Algorithm•15分钟
- Lesson Resources•30分钟
- Measuring Algorithm Effectiveness•15分钟
- Lesson Resources•15分钟
- Vertex Cover Problem•15分钟
- Lesson Resources•30分钟
- Traveling Salesman Problem•15分钟
- Lesson Resources•30分钟
- Set Covering and Subset Sum Problems•10分钟
- Lesson Resources•15分钟
- Design Principles•10分钟
- Lesson Resources•15分钟
- Real-World Applications•10分钟
- Additional Resources•25分钟
7个作业•总计28分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
In this module, you will delve into the principles and motivations behind randomized algorithms, understanding the key differences between deterministic and randomized approaches. You will analyze randomized sorting and searching algorithms, such as randomized quicksort and randomized binary search, to assess their efficiency and reliability. Additionally, you will explore randomized data structures like skip lists and hash tables, evaluating their performance advantages.
涵盖的内容
14篇阅读材料5个作业
14篇阅读材料•总计278分钟
- Module : Randomized Algorithms •1分钟
- Questions to Consider•5分钟
- Lesson Resources•30分钟
- Introduction to Randomized Algorithms•5分钟
- Lesson Resources•30分钟
- Randomized Sorting and Searching•15分钟
- Lesson Resources•30分钟
- Randomized Data Structures•10分钟
- Lesson Resources•30分钟
- Randomized Graph Algorithms•15分钟
- Lesson Resources•30分钟
- Applications and Advanced Topics•15分钟
- Additional Resources•60分钟
- Congratulations! •2分钟
5个作业•总计20分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
- Assess Your Learning•4分钟
位教师

提供方

提供方

Founded in 1898, Northeastern is a global research university with a distinctive, experience-driven approach to education and discovery. The university is a leader in experiential learning, powered by the world’s most far-reaching cooperative education program. The spirit of collaboration guides a use-inspired research enterprise focused on solving global challenges in health, security, and sustainability.
人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.

Jennifer J.

Larry W.

