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.

# Programa de cursos integrados Introduction to Discrete Mathematics for Computer Science

## Build a Foundation for Your Career in IT. Master the math powering our lives and prepare for your software engineer or security analyst career

## Sobre esse Programa de cursos integrados

Discrete Math is needed to see mathematical structures in the object you work with, and understand their properties. This ability is important for software engineers, data scientists, security and financial analysts (it is not a coincidence that math puzzles are often used for interviews). We cover the basic notions and results (combinatorics, graphs, probability, number theory) that are universally needed. To deliver techniques and ideas in discrete mathematics to the learner we extensively use interactive puzzles specially created for this specialization. To bring the learners experience closer to IT-applications we incorporate programming examples, problems and projects in our courses.

Desenvolvido por:

Parceiros do setor:

##### 5 courses

Siga a ordem sugerida ou escolha a sua própria.

##### Projetos

Projetado para ajudar a praticar e aplicar as habilidades que aprendeu.

##### Certificados

Dê destaque às suas novas habilidades em seu currículo ou no seu perfil do LinkedIn.

Visão Geral dos Projetos

Cursos

- Beginner Specialization.
- No prior experience required.

### CURSO 1

## Mathematical Thinking in Computer Science

- Compromisso
- 6 weeks, 2–5 hours/week

- Legendas
- English

### Sobre o curso

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: ind**Você pode optar por fazer apenas este curso.**Saiba mais.### CURSO 2

## Combinatorics and Probability

- Compromisso
- 6 weeks, 3-5 hours/week

- Legendas
- English

### Sobre o curso

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 c**Você pode optar por fazer apenas este curso.**Saiba mais.### CURSO 3

## Introduction to Graph Theory

- Compromisso
- 5 weeks, 3-5 hours/week

- Legendas
- English

### Sobre o curso

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 mathe**Você pode optar por fazer apenas este curso.**Saiba mais.### CURSO 4

## Number Theory and Cryptography

- Compromisso
- 4 weeks, 2-5 hours/week

- Legendas
- English

### Sobre o curso

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 th**Você pode optar por fazer apenas este curso.**Saiba mais.### CURSO 5

## Delivery Problem

- Compromisso
- 3 weeks of study, 2–5 hours/week

- Legendas
- English

### Sobre o curso

We’ll implement (in Python) together efficient programs 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.**Você pode optar por fazer apenas este curso.**Saiba mais.

## Desenvolvedores

#### Vladimir Podolskii

##### Associate Professor

#### Michael Levin

##### Lecturer

#### Alexander S. Kulikov

##### Visiting Professor

## FAQs

More questions? Visit the Learner Help Center.