Back to Mathematical Thinking in Computer Science

stars

1,869 ratings

•

438 reviews

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?
In the course, we use a try-this-before-we-explain-everything approach: you will be solving many interactive (and mobile friendly) puzzles that were carefully designed to allow you to invent many of the important ideas and concepts yourself.
Prerequisites:
1. We assume only basic math (e.g., we expect you to know what is a square or how to add fractions), common sense and curiosity.
2. Basic programming knowledge is necessary as some quizzes require programming in Python....

AD

Mar 25, 2019

The teachers are informative and good. They explain the topic in a way that we can easily understand. The slides provide all the information that is needed. The external tools are fun and informative.

AM

Feb 27, 2021

It is a great course! teachers explain everything with care. While providing lectures there are some popup ques that verify whether you understood that lecture or not. Overall, a great experience.

Filter by:

By Mohammed R

•Apr 30, 2019

Absloutely Fantastic. I highly recommend it to anyone who wants to learn data structures and algorithms thoroughly.

By Saikat M

•Jan 2, 2018

Enjoyable and interesting...also easy to follow for people like me who have been out of college long time back.

By Ernest D

•Jan 5, 2019

this is a very nice course ,its has broaden my whole knowledge about maths

thanks to the creator of this course

By HAILEMICHAEL Y M

•Oct 12, 2019

The course is very good at equipping the basic math concepts for computer science. I highly recommend it!

By Swarnava S

•Jun 13, 2019

Awesome course for beginners. It helped me alot to understand the logic and how to solve problems.

By Rafael D d L P

•Aug 2, 2018

Great introduction to mathematical thinking and how to apply it to computational problems.

By KUMAR A

•Jan 24, 2020

This was the one-stop that I'll never regret learning things again in a different manner.

By Vishnu M

•Sep 7, 2019

Puzzles are great. Seems Instructors put lots of efforts into it. Different approach !

By Jesse W

•May 2, 2019

This course mostly consists of a set of loosely related under the umbrella of discrete mathematics. A lot of the exercises take the form of puzzles where you either have to solve the puzzle or determine whether a solution is impossible. The puzzles are fun and make for good brain exercise; however, I'm not sure if all of this has made me a better programmer. It's worth noting that most Computer Science degrees will require some form of discrete math coursework, so if you're considering CS and are worried about the math requirements, this Specialization would be good to try out.

By Anton M

•Apr 4, 2019

Great course with variety of different mathematical puzzles.

Two things can be improved:

1) It's not always obvious which global subject is discussed during the week and what is a connection with puzzles, some kind of review video at start of each week will be helpful.

2) Sometimes explanations not clear at all. I did watched some videos 2-3 times before completely understand what is going on. It will be great to have a rigours proof of theorems as supplementary reading material.

By Mike P

•Jan 31, 2019

I liked the course, and I enjoyed the math for sure. BUT, I think there were some sections that could have been explained more thoroughly and perhaps some videos that could have been shot again to be more clear. But whatever, I am very grateful to be able to learn this here :)

By Vladimir K

•Feb 5, 2018

While the material itself is important and very useful in general, the course, unfortunately, doesn't have enough practical material to help students to internalise it.

By Frederick H K K

•Jan 21, 2019

Some explanation are unclear or confusing.

By Md. Z M

•Apr 26, 2019

The course is taught by 3 instructors. This makes the experience strikingly unbalanced. The style of course delivery and explanation is very poor with one of the instructors, the one who took Week 1 and 6. The rest of the weeks were OK. The other two instructors were clear with their arguments. This course has a very different approach (do-it-yourself-before-expalnation-by-instructors), although it was mentioned clearly on the Course Info page. If you can make out yourself what strategy to apply for the interactive puzzles, then you are doing good. Otherwise, the puzzles will just be trial-and-error games for you. The instructors were kind enough to answer on the Discussion Forum, but do not expect much activity from your fellow learners as there might be very few people taking this course with you.

By Carlos V

•Feb 15, 2020

I believe that the content of this course is both important and interesting. However, the learning methods used are awful. To begin with, while going through the interactive puzzles I felt that I was not learning anything related to the core lesson at hand. Moreover, the exercises feel like disconnected trivia unrelated to the theoretical explanations. I think the course should be heavily revamped in order to present a proper and useful corpus of knowledge.

By Alvaro A

•Jul 9, 2021

After so many digging, I can only say this is the best introductory course for mathematical thinking, Its amazingly creative and I recommend following the book along with the course. The teachers present the material in a really fun and engaging way. This is definetly how a mooc should be made.

By Himanshu P M

•May 7, 2020

This course is good for beginner.

rather than being complicated it will change the way you think.

one advice---- you should have knowledge of python basic to complete the assignment of this course

By yonas a

•May 24, 2020

I have come to know how mathematical proof is fun thing to do, this course transformed me, i highly recommend it to every one. I would like to thank every one involved in providing this course.

By Mohamed A H

•Jun 26, 2020

This course will improve your problem solving skills and gives you a rigorous explanation in how to counter various mathematical problems in the real life. You will think like a mathematician.

By Jonibek N

•Apr 29, 2020

Course was good, but sometimes i needed additional sources to understand topic better. Maybe, it was because of my english. Anyway it gave me a path what i should look for! Thank you!

By Sanjay A

•Sep 17, 2017

I was waiting for such a great course on discrete Mathematics in coursera.

Thank you UC San Diego

By Dmytro N

•Oct 5, 2017

I like the course. Still some mistakes and bugs, but course is really interesting to pass. Thanks

By PLN R

•Jul 9, 2019

An amazing course really!! The interactive fun assignments make it all the more interesting!! :D

By Eddy P

•Sep 22, 2018

There are many very interesting cases in this course! I will definitely recommend it to others!

By Andrew M

•Oct 26, 2017

A great introductory course and well organized. You can feel that professor loves mathematics.

- Google Data Analyst
- Google Project Management
- Google UX Design
- Google IT Support
- IBM Data Science
- IBM Data Analyst
- IBM Data Analytics with Excel and R
- IBM Cybersecurity Analyst
- Facebook Social Media Marketing
- IBM Full Stack Cloud Developer
- Salesforce Sales Development Representative
- Salesforce Sales Operations
- Soporte de Tecnologías de la Información de Google
- Certificado profesional de Suporte em TI do Google
- Google IT Automation with Python
- DeepLearning.AI Tensorflow
- Popular Cybersecurity Certifications
- Popular SQL Certifications
- Popular IT Certifications
- See all certificates

- Skills for Data Science Teams
- Data Driven Decision Making
- Software Engineering Skills
- Soft Skills for Engineering Teams
- Management Skills
- Marketing Skills
- Skills for Sales Teams
- Product Manager Skills
- Skills for Finance
- Android Development Projects
- TensorFlow and Keras Projects
- Python for Everybody
- Deep Learning
- Excel Skills for Business
- Business Foundations
- Machine Learning
- AWS Fundamentals
- Data Engineering Foundations
- Data Analyst Skills
- Skills for UX Designers

- MasterTrack® Certificates
- Professional Certificates
- University Certificates
- MBA & Business Degrees
- Data Science Degrees
- Computer Science Degrees
- Data Analytics Degrees
- Public Health Degrees
- Social Sciences Degrees
- Management Degrees
- Degrees from Top European Universities
- Master's Degrees
- Bachelor's Degrees
- Degrees with a Performance Pathway
- Bsc Courses
- What is a Bachelor's Degree?
- How Long Does a Master's Degree Take?
- Is an Online MBA Worth It?
- 7 Ways to Pay for Graduate School
- See all degrees