Complexity Theory: Difference between revisions
From Rice Wiki
(Created page with "There exists problems that cannot be solved fast. '''Complexity theory''' is the classification of problems into ''classes''. * P: Set of problems for which exists an algorithm that solves it in poly time O(n^k). * NP: Set of problems for which there exists an algorithm that verifies the solution in poly time = Independent Set Problem = Consider a graph G(V,E). Find the largest set of vertices such that they do not share edges. == Approach: Brute Force == For all po...") |
No edit summary |
||
Line 2: | Line 2: | ||
* P: Set of problems for which exists an algorithm that solves it in poly time O(n^k). | * P: Set of problems for which exists an algorithm that solves it in poly time O(n^k). | ||
* NP: Set of problems for which there exists an algorithm that verifies the solution in poly time | * NP: Set of problems for which there exists an algorithm that, given an instance of the problem and a certificate (simple solution), verifies the solution in poly time | ||
** Example: | |||
= Independent Set Problem = | = Independent Set Problem = |
Revision as of 00:33, 13 March 2024
There exists problems that cannot be solved fast. Complexity theory is the classification of problems into classes.
- P: Set of problems for which exists an algorithm that solves it in poly time O(n^k).
- NP: Set of problems for which there exists an algorithm that, given an instance of the problem and a certificate (simple solution), verifies the solution in poly time
- Example:
Independent Set Problem
Consider a graph G(V,E). Find the largest set of vertices such that they do not share edges.
Approach: Brute Force
For all possible subsets of V, if they are independent, set max.