Advanced Algorithms and Complexity
About this Course
In previous courses of our online specialization you\'ve learned the basic algorithms, and now you are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more typical applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision. We then proceed to linear programming with applications in optimizing budget allocation, portfolio optimization, finding the cheapest diet satisfying all requirements and many others. Next we discuss inherently hard problems for which no exact good solutions are known (and not likely to be found) and how to solve them in practice. We finish with a soft introduction to streaming algorithms that are heavily used in Big Data processing. Such algorithms are usually designed to be able to process huge datasets without being able even to store a dataset.Created by: University of California San Diego

Related Online Courses
In this course, you will see how web apps in Azure allow you to publish and manage your website easily without having to work with the underlying servers, storage, or network assets. Instead, you... more
This MOOC is designed to equip learners with the essential skills and strategies needed to manage high-performance teams effectively. Focusing on team dynamics, trust, and collaboration, the course... more
This course introduces you to Cloud Computing and Oracle\'s Cloud Solutions which include Oracle Cloud Infrastructure and Oracle Cloud Applications. Quick product tours help you experience the... more
This Specialization will provide learners with the knowledge and skills to recognize key shifts in the industry and to have an agile perspective on how these shifts might impact their... more