Back to Mathematical Thinking in Computer Science

stars

1,797 ratings

•

419 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 Keagan P R

•Jun 17, 2020

Lot's of fun challenging puzzles and things to think about. Had a lot of fun. Learned interesting techniques like induction, double counting, and backtracking -- which controls the combinatorial explosion of non-polynomial problems. The final bonus problem is really challenging and a great joy to solve. Don't give up even if you're not really a natural math person like me. You will find value here. Generally, this course, like my other favourites, is about how to think about things when you don't know the formula.

By Vimal E

•May 25, 2020

This course teaches about methods of proof used in mathematics. But it would be a disservice to say that is all that this course is about. It is much more than that. It lets you glimpse at the beauty hidden behind mathematics. For me the highlight of the course is the suite of interactive tools that motivate the techniques about to be taught. If you are taking the course please make sure you play with these tools and try to solve the problems before you watch the relevant lectures.

By Juliano P

•Dec 1, 2020

Really nice material. There are lots os exercises and quizzes throughout the course, it was a very different experience compared to other courses I did in Coursera because the professors include questions as if you were in the classroom, like "Do you see what I mean with this?" or "Can you solve the problem now?", which makes you think again and pay more attention. Going to the 2nd module now!

By Khin M M M

•Dec 10, 2020

Dear Teachers,

Firstly, I would like to tell you about that I greatly respect and admire to our teachers.

Although I'm not a programmer, I'm very interested in programming languages and computer science. Thus, I took this course.

I like the whole course.

Thanks, a lot to our Teachers, teaching staffs, and all other.

I do thank.

By Abhay B

•Aug 23, 2020

It was really very important of a computer Science student to learn Discrete Mathematics. This course is really meant for such thing that why mathematics(Discrete mathematics) is important. Teachers are best, they help if anyone asks them their doubts. Its a great platform where you learn new things things which are very helpful. I thank all the teachers here who taught us.

By Pronay k p

•Dec 18, 2020

Great experience!

My special thanks to professor Alexander S. Kulikov, Michael Levin and, Vladimir Podolskii for their great works. Besides, I am really grateful to the University of California San Diego & National Research University Higher School of Economics and Yandex.

Confidently, I would like to say "COURSERA" is the best!

By Rodrigo G L

•Jan 2, 2021

Excellent course, presented in a very didactic way by combining theory and practice. It is not a collection of exposed knowledge to memorize, but rather a series of challenges of varying difficulty: some easy and others that almost make your head explode. I loved.

By Samyak J

•Sep 22, 2020

It was just awesome. Honestly, I've not taken this good course till now. It was easy, entertaining, surprising, shocking, advanced, cool all at the same time. Thank you UC San Diego, NR HSE and Coursera for providing such an amazing Stuff.

By Muhammad Y A

•Oct 26, 2020

So much fun using mathematics and it's basic to learn a bit of computer science!. The quiz is really challenging but, you can still solve it with a bit of practice. The lecture is enough but the concept and the assignments were very neat.

By Kushwanth R

•Jul 28, 2020

Puzzles are great and its is fun learning the course but the problem is with the programming assignments. they are bit annoying. Even using programming in the video lecture its hard to find the relation b/w programming and mathematics.

By MD. M I

•May 18, 2020

It was great in terms of everything. But, I didn't like the thing that some assignments support the only python. They should include C++ and java also... Struggled in coding python just that's it. But it was great overall.

By Dang T M N

•Jul 27, 2020

The course provides useful knowledge to improve mathematical thinking. I have learnt a lot from the course. The programming exercises are interesting and motivate me to apply what I have learnt into solving problems.

By Yves R W

•Jan 30, 2021

Great intuitive problems and introduction to mathematics, the course bridges these then well to small programming challenges. I would highly recommend this to annyone interested in becoming a better programmer!

By Deleted A

•Jun 20, 2020

Great course that asks questions as you go along, my only issue is that for some parts of the course, a lot of content is covered and not all aspects have a question to ensure you actually understand it.

By Amanat U M

•Feb 28, 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.

By Jacob K

•Jan 9, 2021

I personally have very limited coding skills. this course was able to build my funadmentals in both math and science while understanding more of the bridge between the two. Very thankful for it.

By Mohamed H I

•Sep 16, 2020

Positive: Great material, full of concepts, the teaching is simple and interactive, quizzes are amazing.

Negative: Too much python programming (need to be aware of python basics)

By JEYA S K R

•Jun 15, 2020

Mathematical Thinking in Computer Science course is very interesting to solve the puzzles and to think solutions in more than one way, This was surely enthusiastic :-)

By Dian Y T S S

•Jul 22, 2020

I love this course because it's make math not so boring, every puzzle is very challenging, hope sometime in the future I can meet with all the lecturer in this course.

By Vasiliy I

•May 17, 2020

Excellent course, I especially liked the manner of presentation by Alexander Shen, where before voicing the solution or proof, you are invited to get to it by yourself

By Aditya V M

•Aug 29, 2020

Hi ,I am Aditya

i Really Enjoyed this Course, This course gives a lot of Puzzels and Riddles and it's really fun to solve them , I am moving Towards Next cource now

By David C

•Aug 24, 2020

Good introduction to computer science in term of mathematics but need some improvements in week 5, deeper explanation is needed. However, overall is good

By Gunjan B

•Jun 5, 2020

Amazing experience. This course has interactive puzzles and then theoretical explanation about the mathematics used in solving computer science problems.

By Bharani J

•Feb 28, 2021

Great course with some challenging assignments to complete. This course apparently helped me comprehend how to incorporate Maths into Computer Science,

By Jherson A M C

•May 19, 2020

It's a very dynamic course, fun and easy to understand. Teaches you the essentials of mathematical thinking, and works perfectly as an introduction.

- Finding Purpose & Meaning in Life
- Understanding Medical Research
- Japanese for Beginners
- Introduction to Cloud Computing
- Foundations of Mindfulness
- Fundamentals of Finance
- Machine Learning
- Machine Learning Using Sas Viya
- The Science of Well Being
- Covid-19 Contact Tracing
- AI for Everyone
- Financial Markets
- Introduction to Psychology
- Getting Started with AWS
- International Marketing
- C++
- Predictive Analytics & Data Mining
- UCSD Learning How to Learn
- Michigan Programming for Everybody
- JHU R Programming
- Google CBRS CPI Training

- Natural Language Processing (NLP)
- AI for Medicine
- Good with Words: Writing & Editing
- Infections Disease Modeling
- The Pronounciation of American English
- Software Testing Automation
- Deep Learning
- Python for Everybody
- Data Science
- Business Foundations
- Excel Skills for Business
- Data Science with Python
- Finance for Everyone
- Communication Skills for Engineers
- Sales Training
- Career Brand Management
- Wharton Business Analytics
- Penn Positive Psychology
- Washington Machine Learning
- CalArts Graphic Design

- Professional Certificates
- MasterTrack Certificates
- Google IT Support
- IBM Data Science
- Google Cloud Data Engineering
- IBM Applied AI
- Google Cloud Architecture
- IBM Cybersecurity Analyst
- Google IT Automation with Python
- IBM z/OS Mainframe Practitioner
- UCI Applied Project Management
- Instructional Design Certificate
- Construction Engineering and Management Certificate
- Big Data Certificate
- Machine Learning for Analytics Certificate
- Innovation Management & Entrepreneurship Certificate
- Sustainabaility and Development Certificate
- Social Work Certificate
- AI and Machine Learning Certificate

- Computer Science Degrees
- Business Degrees
- Public Health Degrees
- Data Science Degrees
- Bachelor's Degrees
- Bachelor of Computer Science
- MS Electrical Engineering
- Bachelor Completion Degree
- MS Management
- MS Computer Science
- MPH
- Accounting Master's Degree
- MCIT
- MBA Online
- Master of Applied Data Science
- Global MBA
- Master's of Innovation & Entrepreneurship
- MCS Data Science
- Master's in Computer Science
- Master's in Public Health