Back to Mathematical Thinking in Computer Science

stars

1,847 ratings

•

432 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 BAPPADITYA D

•Oct 24, 2019

I like this course as this course forced me to think for some existing challenges in a research oriented approach. Mathematics is fun and this course again prove this popular concept again. I am eager to learn more and cover future courses for the specialization.

By William M

•Feb 14, 2018

wow great course! I haven't finished the bonus track yet, but it sounds like an interesting exercise for 15 puzzle.

I learned a lot, I've taken discrete math before but definitely gained some new insights this time through, highly recommend these instructors!

By liang t

•Nov 5, 2017

Teachers explain things very clearly, and the interactive puzzles are really helpful for study, The responds of instructors are in short time , so I recommend for those who have a little people to take this course. Thanks a lot

By Joseph G N

•Jul 28, 2018

An excelent course, I hope that someday in my country the mathematic wil be taught in this way with puzzle and those thing really made the course interesting. this course really gave me good approaches to proof a lot of problem

By Ogbekile C

•Jan 25, 2020

I am so grateful to Coursera for the opportunity to learn this course. It was of great delight to find that this course is integral in making the Data Structure and Algorithm Specialization easier to learn. Thank you so much.

By Pedro H

•Jun 17, 2018

Really nice introduction to discrete math and basic algorithms. The content is quite basic, but as mentioned in the syllabus is for beginners. Still, for those of you who are at that level is worth taking this specialization.

By 201951144 S K

•Mar 4, 2020

This course really changed the way I approached problems while solving programming problems, especially the concept of induction which I found very clearly explained. It was really a great and fun experience.

By Keenan B

•Dec 16, 2019

A lot of good information. A little difficult to understand the lectures sometimes, but the subtitles help, as does reading the slides. I really enjoyed this course. The tools were useful too. Great quality.

By harish h

•Feb 20, 2020

This course is helpful for those who tend to start coding in an efficient way as the base for many algorithms in discrete mathematics. Please have a basic of Python to finish the course as per deadlines

By JUNAID A

•Jan 12, 2019

I am really enjoying this course as I take quiz and assignment and manage to solve and make my own analysis and thinking about it in no time.

Overall this course is providing me a different way to think.

By Vijay R

•Dec 19, 2018

What a waste of time.

By Stephen L

•Mar 7, 2018

Decent material but a lot of the assignments were vague.

I also didn't realize that we'd specifically be using Python, wish that were more clear day one. I was under the impression it was more for people that generally knew how to program, not that we'd have to use Python to submit assignments - my Python skills are rusty.

By Mathieu G

•Nov 29, 2017

Assignments on external tool that doesn't seem to work. Have to un-enroll.

By Ashish D S

•Jul 10, 2018

This is excellent course. Make sure that you have basic knowledge of Python before taking this course.

By Arka M

•Jul 10, 2018

Great and Interesting course. Last week is a the best. Thank you for letting me have this experience

By Konstantin K

•Nov 22, 2017

Quite chaotic and disarranged course (in both complexity and structure) although contains interesting topics. Possibly because of its introductory goal.

By Juan L O

•Oct 16, 2017

I really liked this course, it's a good introduction to mathematical thinking, with plenty of examples and exercises, I also liked the use of other external graphical tools as exercises.

By Aditya K P

•Dec 6, 2017

The excellent approaching of supplanting intuition with puzzles to help reason, before starting the lectures makes proof making one of the most fun parts in this course.

By Aditya P

•Jun 23, 2019

Awesome course.....helping me too much as I don't want to leave learning maths .It's my favourite subject.Thanks a lot to all of them who are providing these to us.

By Md H R

•Mar 31, 2020

BRILLIANT. BRILLIANT.

I had never thought Math could be taught like this.

Thank you teachers. Now looking forward to the second course of this specialisation.

By Chris L

•May 25, 2018

It's good, wish it didn't rely so heavily on python for the coding assignments, but now is as good a time as any to get comfortable with it I guess.

By Christine S

•Apr 14, 2020

Fantastic course! So much fun. I want Mr. Shen to teach every course I take! The python bits needed more explanation and direction in my opinion.

By Avinash K C

•Jul 13, 2019

Excellent Course! The explanation of basic mathematical concepts was very helpful in understanding Software Engineering principles.

By Animesh S

•Apr 4, 2020

A really fun experience. I would recommend this course to all beginners in the field of computer science and data science.

By Nyam-Ochir B

•Nov 8, 2018

Nice course little python programming and very good resources. clear teaching and explanation for theories and it's proofs

- 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