# Introduction to Discrete Mathematics for Computer Science 专项课程

Learn the language of Computer Science. Learn the math that defines computer science, and practice applying it through mathematical proofs and Python code

**58,728**人已注册

提供方

## 您将获得的技能

## 关于此 专项课程

## 应用的学习项目

We’ll implement together an efficient program for a problem needed by delivery companies all over the world millions times per day — the travelling salesman problem. The goal in this problem is to visit all the given places as quickly as possible. How to find an optimal solution to this problem quickly? We still don’t have provably efficient algorithms for this difficult computational problem and this is the essence of the P versus NP problem, the most important open question in Computer Science. Still, we’ll implement several efficient solutions for real world instances of the travelling salesman problem. While designing these solutions, we will rely heavily on the material learned in the courses of the specialization: proof techniques, combinatorics, probability, graph theory. We’ll see several examples of using discrete mathematics ideas to get more and more efficient solutions.

无需相关领域的预备知识无需相关经验。

无需相关领域的预备知识无需相关经验。

## 专项课程的运作方式

### 加入课程

Coursera 专项课程是帮助您掌握一门技能的一系列课程。若要开始学习，请直接注册专项课程，或预览专项课程并选择您要首先开始学习的课程。当您订阅专项课程的部分课程时，您将自动订阅整个专项课程。您可以只完成一门课程，您可以随时暂停学习或结束订阅。访问您的学生面板，跟踪您的课程注册情况和进度。

### 实践项目

每个专项课程都包括实践项目。您需要成功完成这个（些）项目才能完成专项课程并获得证书。如果专项课程中包括单独的实践项目课程，则需要在开始之前完成其他所有课程。

### 获得证书

在结束每门课程并完成实践项目之后，您会获得一个证书，您可以向您的潜在雇主展示该证书并在您的职业社交网络中分享。

## 此专项课程包含 5 门课程

### Mathematical Thinking in Computer Science

Mathematical thinking is crucial in all areas of computer science: algorithms, bioinformatics, computer graphics, data science, machine learning, etc. In this course, we will learn the most important tools used in discrete mathematics: induction, recursion, logic, invariants, examples, optimality. We will use these tools to answer typical programming questions like: How can we be certain a solution exists? Am I sure my program computes the optimal answer? Do each of these objects meet the given requirements?

### Combinatorics and Probability

Counting is one of the basic mathematically related tasks we encounter on a day to day basis. The main question here is the following. If we need to count something, can we do anything better than just counting all objects one by one? Do we need to create a list of all phone numbers to ensure that there are enough phone numbers for everyone? Is there a way to tell that our algorithm will run in a reasonable time before implementing and actually running it? All these questions are addressed by a mathematical field called Combinatorics.

### Introduction to Graph Theory

We invite you to a fascinating journey into Graph Theory — an area which connects the elegance of painting and the rigor of mathematics; is simple, but not unsophisticated. Graph Theory gives us, both an easy way to pictorially represent many major mathematical results, and insights into the deep theories behind them.

### Number Theory and Cryptography

We all learn numbers from the childhood. Some of us like to count, others hate it, but any person uses numbers everyday to buy things, pay for services, estimated time and necessary resources. People have been wondering about numbers’ properties for thousands of years. And for thousands of years it was more or less just a game that was only interesting for pure mathematicians. Famous 20th century mathematician G.H. Hardy once said “The Theory of Numbers has always been regarded as one of the most obviously useless branches of Pure Mathematics”. Just 30 years after his death, an algorithm for encryption of secret messages was developed using achievements of number theory. It was called RSA after the names of its authors, and its implementation is probably the most frequently used computer program in the word nowadays. Without it, nobody would be able to make secure payments over the internet, or even log in securely to e-mail and other personal services. In this short course, we will make the whole journey from the foundation to RSA in 4 weeks. By the end, you will be able to apply the basics of the number theory to encrypt and decrypt messages, and to break the code if one applies RSA carelessly. You will even pass a cryptographic quest!

## 提供方

### 加州大学圣地亚哥分校

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory.

### 俄罗斯国家研究型高等经济大学

HSE University is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communicamathematics, engineering, and more.

## 常见问题

完成专项课程后我会获得大学学分吗？

Can I just enroll in a single course?

我可以只注册一门课程吗？

Can I take the course for free?

我可以免费学习课程吗？

此课程是 100% 在线学习吗？是否需要现场参加课程？

完成专项课程需要多长时间？

Do I need to take the courses in a specific order?

Will I earn university credit for completing the Specialization?

还有其他问题吗？请访问 学生帮助中心。