Approximation Algorithms

所在平台: CourseraArchive

课程类别: 其他类别

大学或机构: CourseraNew

课程主页: https://www.coursera.org/archive/approximation-algorithms

课程评论:没有评论

第一个写评论        关注课程

课程大纲

Introduction to Approximation algorithms
The Load Balancing problem
LP Relaxation
Polynomial-time approximation schemes

课程评论(0条)

课程详情

Many real-world algorithmic problems cannot be solved efficiently using traditional algorithmic tools, for example because the problems are NP-hard. The goal of this course is to become familiar with important algorithmic concepts and techniques needed to effectively deal with such problems. These techniques apply when we don't require the optimal solution to certain problems, but an approximation that is close to the optimal solution. We will see how to efficiently find such approximations. Prerequisites: In order to successfully take this course, you should already have a basic knowledge of algorithms and mathematics. Here's a short list of what you are supposed to know: - O-notation, Ω-notation, Θ-notation; how to analyze algorithms - Basic calculus: manipulating summations, solving recurrences, working with logarithms, etc. - Basic probability theory: events, probability distributions, random variables, expected values etc. - Basic data structures: linked lists, stacks, queues, heaps - (Balanced) binary search trees - Basic sorting algorithms, for example MergeSort, InsertionSort, QuickSort - Graph terminology, representations of graphs (adjacency lists and adjacency matrix), basic graph algorithms (BFS, DFS, topological sort, shortest paths) The material for this course is based on the course notes that can be found under the resources tab. We will not cover everything from the course notes. The course notes are there both for students who did not fully understand the lectures as well as for students who would like to dive deeper into the topics. The video lectures contain a few very minor mistakes. A list of these mistakes can be found under resources (in the document called "Errata"). If you think you found an error, report a problem by clicking the square flag at the bottom of the lecture or quiz where you found the error.

近似算法:许多现实世界中的算法问题无法使用传统算法工具有效解决,例如,因为问题是NP难的。本课程的目标是熟悉有效解决此类问题所需的重要算法概念和技术。当我们不需要针对某些问题的最佳解决方案,而是接近于最佳解决方案的近似值时,可以应用这些技术。我们将看到如何有效地找到这样的近似值。 先决条件: 为了成功上这门课程,您应该已经具有算法和数学的基础知识。这是您应该了解的简短列表: -O符号,Ω符号,Θ符号;如何分析算法 -基本演算:处理求和,求解递归,使用对数等。 -基本概率论:事件,概率分布,随机变量,期望值等 -基本数据结构:链表,堆栈,队列,堆 -(平衡)二进制搜索树 -基本排序算法,例如MergeSort,InsertionSort,QuickSort -图形术语,图形表示(邻接表和邻接矩阵),基本图形算法(BFS,DFS,拓扑排序,最短路径) 本课程的材料基于可在“资源”选项卡下找到的课程笔记。我们不会从课程笔记中涵盖所有内容。对于不完全了解讲座的学生和想深入研究主题的学生,都有课程笔记。 视频讲座包含一些非常小的错误。这些错误的列表可以在资源下找到(在名为“勘误”的文档中)。如果您认为发现错误,请通过单击讲座或测验底部找到错误的方形标记来报告问题。

课程标签

0人关注该课程

主题相关的课程