0

We're learning Complexity in our CS class and one of the topics is NP and P complexity. I know that NP stands for Non-deterministic Polynomial time and P stands for Polynomial time. Now I'm trying to grasp what these mean.

What does "Non-deterministic Polynomial" mean? I'm pretty sure that it relates to the run-time of a problem but I'm not a 100% sure. I've reads Wikipedia articles and some other blogs but they're explanation is at a higher level than what we did, so if the answer can be "dumbed down" a little bit.

Ski Mask
  • 281
  • 1
  • 2
  • 10
  • 1
    Possible duplicate of [What are the differences between NP, NP-Complete and NP-Hard?](https://stackoverflow.com/questions/1857244/what-are-the-differences-between-np-np-complete-and-np-hard) – beaker Feb 15 '18 at 23:49
  • @beaker Actually, duplicate of https://stackoverflow.com/questions/13524011/i-do-not-understand-the-concept-of-non-deterministic-turing-machine – Miljen Mikic Feb 16 '18 at 09:30

1 Answers1

1

Dumbed down version: If you have both a problem and a solution and you can check if the solution is right in polynomial time, it's in NP. If you have only a problem and you can find the right solution in polynomial time, it's in P. P is a subset of NP.

If you really want to understand what it means, you need some basics in automata theory and find out what deterministic and non-deterministic Turing machines are. That's not a thing someone can really dumb down for you easily.

Ordoshsen
  • 518
  • 2
  • 13