Back to Mathematical Thinking in Computer Science

4.4

stars

1,451 ratings

•

355 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 26, 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.

CW

Feb 02, 2020

I loved this course! So many interesting things to think about, thoughtfully explained by brilliant instructors. The puzzles really get you thinking. Such genius to put them before the lectures!

Filter by:

By Mohta R S

•Jun 28, 2020

Great course gives you an algorithmic touch Do this specialization before doing the DSA specialisation

Get comfortable with python syntax before starting this.

By sadaf s

•May 22, 2020

Alexander Chen gave a hard time in last week, but i liked how in his lectures there were numerous cunning pop ups which made it impossible to get distracted

By Andrea M

•Apr 10, 2020

Instructors are very knowledgeable and the lessons are usually helpful, but it's common for the explanations to contain errors or be unclear in some way.

By Dwija B

•Jun 19, 2020

The course was extremely helpful and easy to follow. The inclusion of interactive puzzles made the course more interesting and urged me to learn more.

By Toral S

•Apr 27, 2020

The course contents were excellent, well designed. But towards the end of the course, things became confusing. Reviewing videos did not help.

By Phani S

•May 20, 2020

Lectures have a piece of great knowledge about the subject but they lack a bit to explain it fluently.

Great course though. Enjoyed

By Marco F

•Oct 18, 2019

It felt more like learning how to do puzzles rather than learning math. But maybe that was the objective and I didn't get it!

By Aniket K

•Jul 06, 2020

The course was awesome. I learnt and enjoyed it. Should provide the hints/solutions for algorithm problems in the quizes.

By Shubh B

•May 04, 2020

The accent posed a problem in understanding the content. Otherwise, all the content and materials were superb.

By Jesse A C

•May 18, 2019

Solid course. Lectures were sometimes jumbled and hard to understand, but overall it was well put-together.

By vanita M B

•Jun 19, 2020

It's very good course builds problem solving skills exiting and interesting quizzes enjoyed the journey..

By Sriram R

•Mar 24, 2018

Simple explanations made math more easy to handle. Thanks to the prof's for timely responses in Forums.

By Adnan M

•Apr 16, 2019

The course encourage you to start thinking, it's easy but can be first step towards thinking. :)

By Karan S

•Jul 27, 2020

Overall the course was great! But, last section on permutations could've been explained better.

By yousef i o

•Apr 05, 2020

There is Somethings that I found hard to understand during the explanations of some hard topics

By Aman K S

•Apr 23, 2020

The only thing required is to allow learners to use any programming language instead of Python

By Kamogelo S

•Jun 14, 2020

This was an interesting and captivating course. The professors were concise and entertaining.

By Marco M

•May 17, 2020

I like the learn by doing approach but some more explanation would help.

A good course.

By Joseph A D

•Dec 24, 2017

I enjoyed the course. I would like more depth or more clear explanations from A Shen.

By SWARNAPRATIM M

•Oct 24, 2017

Good course.Great puzzles.A big thank you to the instructors.Thank you once again.

By Sara K

•Aug 20, 2020

I think the coding should be allowed to be in other languages as well as python

By Yufan Z

•Jul 19, 2018

Some explanations might be a little confused for me. But this is a good course!

By Devansh R

•May 12, 2020

This course helped me in thinking logic of algorithms in a much efficient way.

By Nikhil R

•Jul 25, 2020

The best way to learn Mathematics, simply brilliant and really interactive

By Mudit V

•Jun 05, 2020

Interesting Course Help You To Understand Basic programming and its maths.

- AI for Everyone
- Introduction to TensorFlow
- Neural Networks and Deep Learning
- Algorithms, Part 1
- Algorithms, Part 2
- Machine Learning
- Machine Learning with Python
- Machine Learning Using Sas Viya
- R Programming
- Intro to Programming with Matlab
- Data Analysis with Python
- AWS Fundamentals: Going Cloud Native
- Google Cloud Platform Fundamentals
- Site Reliability Engineering
- Speak English Professionally
- The Science of Well Being
- Learning How to Learn
- Financial Markets
- Hypothesis Testing in Public Health
- Foundations of Everyday Leadership

- Deep Learning
- Python for Everybody
- Data Science
- Applied Data Science with Python
- Business Foundations
- Architecting with Google Cloud Platform
- Data Engineering on Google Cloud Platform
- Excel to MySQL
- Advanced Machine Learning
- Mathematics for Machine Learning
- Self-Driving Cars
- Blockchain Revolution for the Enterprise
- Business Analytics
- Excel Skills for Business
- Digital Marketing
- Statistical Analysis with R for Public Health
- Fundamentals of Immunology
- Anatomy
- Managing Innovation and Design Thinking
- Foundations of Positive Psychology