# 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

**23,081**명이 이미 등록했습니다.

### 귀하가 습득할 기술

## 이 전문 분야 정보

## 응용 학습 프로젝트

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.

#### 공유 가능한 수료증

#### 100% 온라인 강좌

#### 유동적 일정

#### 초급 단계

사전 경험이 필요하지 않습니다.

#### 완료하는 데 약 6개월 필요

#### 영어

#### 공유 가능한 수료증

#### 100% 온라인 강좌

#### 유동적 일정

#### 초급 단계

사전 경험이 필요하지 않습니다.

#### 완료하는 데 약 6개월 필요

#### 영어

### 이 전문 분야에는 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.

#### 국립 연구 고등 경제 대학

National Research University - Higher School of Economics (HSE) 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.

## 자주 묻는 질문

전문 분야를 완료하면 대학 학점을 받을 수 있나요?

If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.

Can I just enroll in a single course?

구독하는 경우, 취소해도 요금이 청구되지 않는 7일간의 무료 평가판을 이용할 수 있습니다. 해당 기간이 지난 후에는 환불이 되지 않지만, 언제든 구독을 취소할 수 있습니다. 전체 환불 정책 보기.

하나의 강좌에만 등록할 수 있나요?

네! 시작하려면 관심 있는 강좌 카드를 클릭하여 등록합니다. 강좌를 등록하고 완료하면 공유할 수 있는 인증서를 얻거나 강좌를 청강하여 강좌 자료를 무료로 볼 수 있습니다. 전문 분야 과정에 있는 강좌에 등록하면, 전체 전문 분야에 등록하게 됩니다. 학습자 대시보드에서 진행 사항을 추적할 수 있습니다.

Can I take the course for free?

예, Coursera에서는 수업료를 낼 수 없는 학습자를 위해 재정 지원을 제공합니다. 왼쪽에 있는 등록 버튼 아래 재정 지원 링크를 클릭하면 지원할 수 있습니다. 신청서를 작성하라는 메시지가 표시되며 승인되면 알림을 받습니다. 성취 프로젝트를 포함하여 전문 분야의 각 강좌에서 이 단계를 완료해야 합니다. 자세히 알아보기.

해당 강좌를 무료로 수강할 수 있나요?

강좌를 등록하면 전문 분야의 모든 강좌에 접근할 수 있으며 강좌를 완료하면 인증서가 발급됩니다. 강좌 내용을 읽고 보기만 원한다면 강좌를 무료로 청강할 수 있습니다. 수업료를 지급하기 어려운 경우, 재정 지원을 신청할 수 있습니다.

이 강좌는 100% 온라인으로 진행되나요? 직접 참석해야 하는 수업이 있나요?

이 강좌는 100% 온라인으로 진행되므로 강의실에 직접 참석할 필요가 없습니다. 웹 또는 모바일 장치를 통해 언제 어디서든 강의, 읽기 자료, 과제에 접근할 수 있습니다.

전문 분야를 완료하는 데 얼마나 걸리나요?

As prerequisites we assume only basic math (e.g., we expect you to know what is a square or how to add fractions), basic programming in python (functions, loops, recursion), common sense and curiosity. Our intended audience are all people that work or plan to work in IT, starting from motivated high school students.

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

We recommend taking the courses in the order presented, as each subsequent course will build on material from previous courses.

Will I earn university credit for completing the Specialization?

Coursera courses and certificates don't carry university credit, though some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.

궁금한 점이 더 있으신가요? 학습자 도움말 센터를 방문해 보세요.