48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
#todo
|
||
|
||
![[Pasted image 20250124095546.png]]
|
||
|
||
> Задача является NP-полной, если она одновременно является NP-задачей и NP-трудной задачей.
|
||
|
||
|
||
## Задачи разрешимости
|
||
|
||
Задача разрешимости подразумевает ответ «да» или «нет»
|
||
|
||
|
||
## Задачи выполнимости (SAT, Satisfiability Problem)
|
||
Задача SAT всегда ищет ответ «да» или «нет», поэтому это задача разрешимости.
|
||
Характеризуется временем выполнения $O(2^n)$.
|
||
|
||
## Классы задач P и NP
|
||
Решения задачи SAT быстро проверяются, поэтому она относится к классу NP. В класс NP входят задачи, решения которых могут быть проверены за полиномиальное время. NP-задачи могут быть простыми или трудными в решении, но их решения легко проверить. Этим они отличаются от класса P.
|
||
![[Pasted image 20250124100003.png]]
|
||
Задача относится к классу P, если ее можно решить и проверить за полиномиальное время.
|
||
![[Pasted image 20250124100009.png]]
|
||
|
||
![[Pasted image 20250124100108.png]]
|
||
|
||
## Сведе́ние
|
||
Задача, которую вы не умеете решать, сводится к задаче, которую вы решать умеете
|
||
![[Pasted image 20250124100222.png]]
|
||
|
||
## NP-трудность
|
||
|
||
типы NP-трудных задач:
|
||
- задача о покрытии множества
|
||
- задача о коммивояжере
|
||
- задача SAT
|
||
|
||
Задача называется NP-трудной, если какая-либо задача из класса NP может быть сведена к этой задаче.
|
||
|
||
Все NP-задачи также могут быть сведены к любой NP-трудной задаче. Например, все задачи NP можно свести к SAT
|
||
|
||
![[Pasted image 20250124100407.png]]
|
||
|
||
## NP-полнота
|
||
|
||
![[Pasted image 20250124100520.png]]
|
||
|
||
|
||
Источники:
|
||
- [[Адитья Бхаргава - Грокаем Алгоритмы]] |