- All DegreesExplore Bachelor’s & Master’s degrees
- BusinessExplore MBA & Business degrees
- Computer Science & EngineeringExplore Computer Science & Engineering degrees
- Data ScienceExplore Data Science degrees
- MasterTrack™Earn credit towards a Master’s degree
- University CertificatesAdvance your career with graduate-level learning

Back to Combinatorics and Probability

stars

808 ratings

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.
In this online course we discuss most standard combinatorial settings that can help to answer questions of this type. We will especially concentrate on developing the ability to distinguish these settings in real life and algorithmic problems. This will help the learner to actually implement new knowledge. Apart from that we will discuss recursive technique for counting that is important for algorithmic implementations.
One of the main ‘consumers’ of Combinatorics is Probability Theory. This area is connected with numerous sides of life, on one hand being an important concept in everyday life and on the other hand being an indispensable tool in such modern and important fields as Statistics and Machine Learning. In this course we will concentrate on providing the working knowledge of basics of probability and a good intuition in this area. The practice shows that such an intuition is not easy to develop.
In the end of the course we will create a program that successfully plays a tricky and very counterintuitive dice game.
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....

SP

Feb 26, 2021

Special thanks to Prof. Vladimir Podolskii and Prof. Alexander S. Kulikov for their amazing explanations and diligent visuals of the concepts as well as problem sets. You Rock!

KB

Dec 25, 2019

Great course, lots of good info, not too long. Some of the coding assignments and quizzes are challenging, but the staff respond very quickly to questions in the forums.

Filter by:

By kobi c

•Sep 10, 2021

This is already the fifth online course I take, both here in Coursera and also in Udacity. Overall I have to say that the topics presented here are VERY important, but sadly I couldn't follow the lecturers, I think Coursera should set at least a minimal rough for presenting and teaching and also punctuation and accent

By wayub01

•Dec 14, 2021

The introduction to Binomial theorm, Pascal triangle and its applications was totally pathetic. I would need to consult other resources to continue with this course.

By ID

•Apr 22, 2022

Too many errors, not easy to understand.

By Arpan K D

•Feb 17, 2021

A brilliant introduction to combinatorics and probability. The professors bring some method to the madness of combinatorics by drawing an extremely helpful quadrant (ordered or unordered vs with repetition or without repetition) to explain how to structurally approach combinatorics problems. The lessons on probability cover probability and random variables, with some well chosen problems to demonstrate why we need both concepts. Finally, the project in week 6 is extremely helpful for people who are rusty in programming, allowing them to implement a solution leveraging combinatorics and python programming.

By Guo F

•Dec 11, 2020

Pros: (1). Most of the quizzes are really well-designed and fun, sometimes challenging, but good for solidifying my understanding. (2) Lectures are generally of good quality.

Cons:(1) The material is not comprehensive, especially the probability part, expectation and stuff. But I guess this is a difficult balance when making an online course.

(2) The final project is very basic for anyone who knows programming well. Considering this course targets CS students (I guess?), I don't understand why people complain about the programming assignments. And I think it should be more challenging.

By Muhammad Y A

•Nov 1, 2020

It was fantastic and awesome. This course is quite challenging but also interesting at the same time. You'll get assignments about combinatorics in the first half and about probabilities in the last half. In the end, you can practice what have you got from this course on the final project, a programming assignment about a dice game. Hope you can enjoy this course.

By Paul P

•Jan 4, 2020

This course does have some coding challenges which are at the same time very interesting. Actually, I did not think much about combinatorics in terms of coding but this was a very nice opportunity to learn more about mathematical thinking for programming and problem-solving.

By Vishal M

•May 2, 2020

I like this course and it is puzzle oriented teaching methodology. Instructors were great and their way of teaching makes material easy to understand and stick in mind. This was a introductory course looking forward to more advanced courses.

By Aryan R

•Aug 11, 2020

The Course is awesome if you know some basic maths. The instructors have a good way of teaching. The problems in middle of videos help in understanding better. The problems in tests are usually helpful in getting a better understanding

By 储忻

•May 2, 2021

very good content and inspirational material. I learned probability theory from multiple institutes but this one offers great insight into some formulae that we took for granted. e.g. Bayes Theorem

By Siddhant P

•Feb 27, 2021

Special thanks to Prof. Vladimir Podolskii and Prof. Alexander S. Kulikov for their amazing explanations and diligent visuals of the concepts as well as problem sets. You Rock!

By Jherson A M C

•Sep 9, 2020

It's a perfect introduction to combinatorics and probability, short, fun, and easy to understand. I would like to see more puzzles, those are extremely fun and interesting

By Clayton W

•Jul 9, 2021

the dainty old dude was the worst lecturer who rambled non-coherent nonsense. the younger folks were much better verbal communicators. overall great course!

By T K

•May 19, 2020

I lacked confidence in permutations and combinations since my high school, but now i am enjoying solving combinatorial problems. Thanks to professors

By Chen Z

•Sep 11, 2018

The final project is hard for me cuz I don't have Python experience. and the logic is a little bit complicated. That's not for absolutely beginners!

By Denis C

•Jan 22, 2021

It was pretty interesting. Although, the requirement to know the python programming in the last course task was really unexpected to me.

By James M

•Mar 21, 2020

I've covered these topics before but there were a lot of great problems and extensions of concepts in this course. Worth doing.

By Yash

•Feb 22, 2020

the course was very good. it improved my overall knowledge in the area of probability and combinatorics.

By Juan L O

•Oct 30, 2017

This one is a bit more 'mathy' than the first one, it has a good pace and the exercises are really cool

By Hossam S

•Aug 19, 2020

Fun and Intuitive. I believe the probability week's last parts were a little confusing but good too.

By Ashish D S

•Jul 13, 2018

Content of this course is excellent. Basic Python programming skill is required for this course.

By Mariam M

•Oct 20, 2020

Very well paced, great explanations and the difficulty level is challenging yet not impossible.

By Manikant R

•Jun 11, 2020

This one was good but I still liked 1st-course exercises and puzzles. This one was quite boring

By Abhishek S

•Sep 26, 2021

Helped cement the understanding of combinatorics & develop problem solving capabilities.

By 叶罗鑫

•Feb 19, 2021

the course is splendid,the programming task plays an important role in my study process.

- AWS Cloud A Practitioner's Guide
- Basics of Computer Programming with Python
- Beginners Python Programming in IT
- Developing Professional High Fidelity Designs and Prototypes
- Get Google CBRS-CPI Certified
- Introduction to MATLAB Programming
- Learn HTML and CSS for Building Modern Web Pages
- Learn the Basics of Agile with Atlassian JIRA
- Managing IT Infrastructure Services
- Mastering the Fundamentals of IT Support

- Basics of Computer Programming with Python
- Beginners Python Programming in IT
- Building a Modern Computer System from the Ground Up
- Getting Started with Google Cloud Fundamentals
- Introduction to Cryptography
- Introduction to Programming and Web Development
- Introduction to UX Design
- Learn HTML and CSS for Building Modern Web Pages
- Mastering the Fundamentals of IT Support
- Utilizing SLOs & SLIs to Measure Site Reliability

- Building an Agile and Value-Driven Product Backlog
- Foundations of Financial Markets & Behavioral Finance
- Getting Started with Construction Project Management
- Getting Started With Google Sheets
- Introduction to AI for Non-Technical People
- Learn the Basics of SEO and Improve Your Website's Rankings
- Mastering Business Writing
- Mastering the Art of Effective Public Speaking
- Social Media Content Creation & Management
- Understanding Financial Statements & Disclosures