Base/Knowledges/IT/Алгоритмы/NP-полные задачи.md
2026-02-23 19:52:05 +03:00

2.3 KiB
Raw Blame History

#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

Источники: