Intro to Theoretical Computer Science

Provided by:
9/10 stars
based on  3 reviews
Provided by:
Cost FREE
Start Date On demand

Course Details

Cost

FREE

Upcoming Schedule

  • On demand

Course Provider

Udacity online courses
Udacity gives students the opportunity to create hands-on projects that can be put into their portfolios and used to demonstrate their skills to future employers. You'll have a personal coach who helps provide feedback on your assignments and projects to assist you in reaching your goals and staying on track in your online classes. Throughout your education experience, you'll be able to track your development, complete in-class projects, have access to interactive exercises and videos and ...
Udacity gives students the opportunity to create hands-on projects that can be put into their portfolios and used to demonstrate their skills to future employers. You'll have a personal coach who helps provide feedback on your assignments and projects to assist you in reaching your goals and staying on track in your online classes. Throughout your education experience, you'll be able to track your development, complete in-class projects, have access to interactive exercises and videos and earn a verified certificate at the end of the course as proof of all that you've learned. You'll be learning from knowledgeable professors across various schools and parts of the globe. Learn about computer science from Dave Evans, an instructor at the University of Virginia, or delve into app development with Samantha Ready, a Developer Evangelist at Salesforce.com.

Provider Subject Specialization
Sciences & Technology
102 reviews

Course Description

This class teaches you about basic concepts in theoretical computer science -- such as NP-completeness -- and what they imply for solving tough algorithmic problems.
Reviews 9/10 stars
3 Reviews for Intro to Theoretical Computer Science

Ratings details

  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.

Sort By
Greg Hamel profile image
Greg Hamel profile image
10/10 starsCompleted
  • 116 reviews
  • 107 completed
5 years, 9 months ago
Introduction to theoretical computer science is all about identifying and tackling hard problems. The quality of the material and instruction is excellent. Sebastian Wernicke breaks down complex topics in a way that is easy to understand. Central topics include the P vs. NP question, NP completeness and strategies for dealing with NP-complete problems. The class uses a few related graph problems--vertex cover, independent set and clique-- to introduce and discuss the central topics. It also covers a few other interesting problems like traveling salesman and 3-SAT. As the name implies, this course is heavy on theory. As such, there is not a lot of actual programming you have to do to complete the course. There are a few programming problems, but quizzes and homework mostly revolve around multiple choice questions that get you to think about and master the concepts presented in lecture. Since it is light on programming, the course goes... Introduction to theoretical computer science is all about identifying and tackling hard problems. The quality of the material and instruction is excellent. Sebastian Wernicke breaks down complex topics in a way that is easy to understand. Central topics include the P vs. NP question, NP completeness and strategies for dealing with NP-complete problems. The class uses a few related graph problems--vertex cover, independent set and clique-- to introduce and discuss the central topics. It also covers a few other interesting problems like traveling salesman and 3-SAT. As the name implies, this course is heavy on theory. As such, there is not a lot of actual programming you have to do to complete the course. There are a few programming problems, but quizzes and homework mostly revolve around multiple choice questions that get you to think about and master the concepts presented in lecture. Since it is light on programming, the course goes quickly if you don’t have to re-watch the lectures too many times to understand the material. Even though this class is about theory, you will learn practical things like preprocessing data to speed up algorithms. I highly recommend this course to anyone with curiosity about the P vs. NP question and solving hard problems.
Was this review helpful? Yes4
 Flag
Damian Grant profile image
Damian Grant profile image
10/10 starsCompleted
  • 6 reviews
  • 5 completed
6 years, 7 months ago
I've completed about 4 MOOCs now, and this has been my favourite so far. I found it to be a solid "intermediate" level - both in terms of workload and difficulty. I found some of the quizzes - particularly the exam - needed multiple submissions to get right. I'm not sure if this suggests I didn't deeply understand the material after all. The problem sets usually included just 1-2 programming exercises, and only a few were really challenging. I thought the instructor was brilliant, and responsive to questions on the forums. In terms of content, obviously everyone will have different interests and background. I was expecting something a little different (more due to my ignorance as to what is "theoretical" and what is "practical" Comp Sci). It's a lot more mathematical than other CS courses. On the other hand, I haven't done any Algorithms courses (which was a recommended pre-req). As I say, it's early days yet for my MOOC education, b... I've completed about 4 MOOCs now, and this has been my favourite so far. I found it to be a solid "intermediate" level - both in terms of workload and difficulty. I found some of the quizzes - particularly the exam - needed multiple submissions to get right. I'm not sure if this suggests I didn't deeply understand the material after all. The problem sets usually included just 1-2 programming exercises, and only a few were really challenging. I thought the instructor was brilliant, and responsive to questions on the forums. In terms of content, obviously everyone will have different interests and background. I was expecting something a little different (more due to my ignorance as to what is "theoretical" and what is "practical" Comp Sci). It's a lot more mathematical than other CS courses. On the other hand, I haven't done any Algorithms courses (which was a recommended pre-req). As I say, it's early days yet for my MOOC education, but I hope there are other courses this good out there for me to discover!
Was this review helpful? Yes2
 Flag
Ruslan Bes profile image
Ruslan Bes profile image
10/10 starsTaking Now
  • 9 reviews
  • 8 completed
6 years ago
If you ever heard about "P vs NP" problem and didn't understood what is all about this is the course to take. After the first 4 units I finally grasped the idea behind these sets. Prerequisites: Abstract thinking. Graphs. Algorithms. Python. Although Python is required only if you are interesting in implementing algorithms. Videos: quite good. First units tell about three practical problems on graphs: clique, independent set and vertex cover and how they transform into each other. After that the units go to a more general problems and how solving general case may help solve those three tasks. What I've currently learned from the course: -Understood what is P, NP and NP- Complete sets and I'm even able to explain it to someone.
Was this review helpful? Yes1
 Flag

Rating Details


  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.