NP, NP-Complete 및 NP-Hard의 차이점은 무엇입니까?


1107

NP , NP-CompleteNP-Hard 의 차이점은 무엇입니까 ?

웹 전체의 많은 리소스를 알고 있습니다. 나는 당신의 설명을 읽고 싶습니다. 그 이유는 그것들이 거기에있는 것과 다르거 나 내가 알지 못하는 것이 있기 때문입니다.

답변:


1438

기술적 정의를 이해하려면 상당한 시간이 필요하기 때문에 직관적 인 정의를 찾고 있다고 가정합니다. 우선, 그러한 정의를 이해하기 위해 필요한 예비 개념을 기억합시다.

  • 결정 문제 : 또는 아니오로 대답 하는 문제 .

이제 이러한 복잡성 클래스를 정의하겠습니다 .

P는 다항식 시간으로 해결 될 수있는 모든 결정 문제의 집합을 나타내는 복잡성 클래스입니다 .

즉, 문제의 예가 주어지면, 예 또는 아니오의 답은 다항식 시간으로 결정될 수 있습니다.

연결된 그래프가 주어지면 G꼭지점이 단색이 아닌 두 가지 색상을 사용하여 색상을 지정할 수 있습니까?

알고리즘 : 임의의 정점으로 시작하여 빨간색과 모든 이웃을 파란색으로 칠한 다음 계속합니다. 꼭짓점이 떨어지거나 가장자리의 끝 점이 모두 같은 색이되게하려면 중지하십시오.


NP

NP는 답이 "예"인 인스턴스가 다항식 시간으로 검증 될 수있는 증거를 갖는 모든 결정 문제점 세트를 나타내는 복잡성 클래스입니다.

이것은 누군가가 우리에게 문제의 예를 제시하고 예라고 대답하는 증인 (때때로 증인이라고 함)을 주면, 다항식 시간이 올바른지 확인할 수 있습니다.

정수 인수 분해 는 NP에 있습니다. 이것은 정수를 부여하는 문제 nm정수가, f와가 1 < f < m되도록, f분할은 n( f작은 요인 n)?

정답이 '예'인지 '아니오'인지에 대한 결정 문제입니다. 누군가 우리에게 문제의 인스턴스 (정수 nm)를 정수 f로 전달 1 < f < m하고 그것을 (인증서) f의 요소 라고 주장 하면 나누기를 수행하여 다항식 시간 으로 n답을 확인할 수 있습니다 .n / f


NP- 완료

NP-Complete은 X다른 NP 문제 YX다항식 시간 으로 줄일 수있는 NP 의 모든 문제 세트를 나타내는 복잡성 클래스입니다 .

직관적으로 이는 Y신속하게 해결하는 방법을 알고 있으면 신속하게 해결할 수 있음을 의미합니다 X. 정확하게, Y에 환원이다 X다항식 시간 알고리즘이있는 경우, f인스턴스 변환하는 y의를 Y인스턴스 x = f(y)X그 대답에 재산과, 다항식 시간에 y'예, 경우에만, 대답에 f(y)'예 '가.

3-SAT. 이것은 우리가 3- 절 분리 (OR)의 결합 (AND)과 형식의 진술을받는 문제입니다

(x_v11 OR x_v21 OR x_v31) AND 
(x_v12 OR x_v22 OR x_v32) AND 
...                       AND 
(x_v1n OR x_v2n OR x_v3n)

여기서 각각 x_vij은 부울 변수이거나 유한 사전 정의 된 목록에서 변수의 부정입니다 (x_1, x_2, ... x_n).

이는 것을 표시 할 수있는 모든 NP 문제 3- SAT로 감소 될 수있다 . 이에 대한 증명은 기술적 인 것이며 NP의 기술적 정의 ( 비 결정적 튜링 머신 기반)를 사용해야합니다 . 이것을 Cook의 정리라고 합니다.

NP- 완전 문제를 중요하게 만드는 것은 결정 론적 다항식 시간 알고리즘이 그 중 하나를 해결하기 위해 발견 될 수 있다면, 모든 NP 문제는 다항식 시간으로 해결할 수 있다는 것입니다 (모든 문제를 다룰 하나의 문제).


NP- 하드

직관적으로, 이것은 NP- 완전 문제만큼 어려운 문제 입니다. NP- 하드 문제 는 NP있을 필요는 없으며 결정 문제 일 필요는 없습니다 .

여기서 정확한 정의 는 다항식 시간으로 환원 될 수 있는 NP- 완전 문제가있는 경우 문제 X가 NP-hard Y라는 것 Y입니다X .

그러나 모든 NP- 완전 문제는 다항식 시간의 다른 NP- 완전 문제로 줄일 수 있으므로 모든 NP- 완전 문제는 다항식 시간의 모든 NP- 완전 문제로 줄일 수 있습니다. 다항식 시간에 하나의 NP-hard 문제에 대한 해결책이 있다면, 다항식 시간에 모든 NP 문제에 대한 해결책이 있습니다.

정지 문제는 NP에 하드 문제이다. 이것은 프로그램 P과 입력 이 주어지면 I멈추는 문제입니까? 이것은 의사 결정 문제이지만 NP에는 없습니다. NP- 완전 문제는이 문제로 줄어들 수 있습니다. 다른 예로서, NP- 완전 문제는 NP-hard입니다.

내가 가장 좋아하는 NP- 완전 문제는 지뢰 찾기 문제 입니다.


P = NP

이것은 컴퓨터 과학에서 가장 유명한 문제이며 수학에서 가장 중요한 뛰어난 질문 중 하나입니다. 실제로, Clay Institute 는이 문제에 대한 해결책으로 백만 달러를 제공하고 있습니다 ( Clay 웹 사이트에 Stephen Cook의 은 상당히 좋습니다).

P는 NP의 부분 집합임이 분명하다. 열린 문제는 NP 문제에 결정적인 다항식 시간 솔루션이 있는지 여부입니다. 그들이하지 않는 것으로 크게 믿어집니다. 다음은 P = NP 문제의 최신 (및 중요성)에 관한 뛰어난 최근 기사 입니다. P 대 NP 문제의 상태 .

주제에 관한 최고의 책은 Garey와 Johnson의 Computers and Intractability 입니다.


32
@Paul Fisher : SAT가 다항식 시간에서 정지 문제로 환원 될 수 있음을 보여 드리겠습니다. 다음 알고리즘을 고려하십시오. 변수에 대한 제안을 입력으로 제공 I하고 n변수에 2^n가능한 모든 할당을 시도 하고 제안을 만족하는 경우 중지하고 그렇지 않으면 무한 루프를 입력하십시오. I만족할 수있는 경우에만이 알고리즘이 중지된다는 것을 알 수 있습니다. 따라서 정지 문제를 해결하기위한 다항식 시간 알고리즘이 있다면 다항식 시간으로 SAT를 해결할 수 있습니다. 따라서 정지 문제는 NP-hard입니다.
Jason Jason

6
@Jason-그러한 방식으로 결정 가능한 문제를 결정 불가능한 문제로 줄일 수 없습니다. 결정 가능한 문제는 결정 가능한 것으로 간주되기 위해 결정적인 예 또는 대답이 없어야합니다. 임의의 응답이 솔루션을 루프에 넣을 수 있기 때문에 Halting Problem에는 확실한 예 또는 지금 답변이 없습니다.
rjzii 2009

11
@Rob : 예, 가능합니다. 환원의 정의는 문제를 해결할 수 있도록 감소시킬 필요가 없다. 이는 일대일 감소 또는 튜링 감소에 해당됩니다.
Jason

5
@Rob : 그래도 계속하고 싶다면 그래. 먼저, "Decidable"은 "decision problem"과 동의어가 아닙니다. "결정 가능"은 대략 답변을 결정하는 "유효한 방법"이 있음을 의미합니다. 물론 "유효한 방법"에는 기술적 정의가 있습니다. 또한, "결정 가능"은 "계산 가능 기능"의 관점에서 정의 될 수도있다. 따라서 중지 문제는 의사 결정 문제 ( "이 프로그램이 중지됩니까?"는 예 / 아니오입니다)이지만 결정 불가능합니다. 중지 문제의 인스턴스가 중지되는지 여부를 결정하는 효과적인 방법은 없습니다.
Jason

21
NP-hard 문제의 "고전적인 예"로 Halting 문제를 사용하는 것은 올바르지 않습니다. "태평양은 바닷물 수족관의 전형적인 예입니다."
Michael

261

나는 주변을 둘러보고 많은 긴 설명을 보았습니다. 다음은 요약하는 데 유용한 작은 차트입니다.

어떻게 바닥에 어려움이 증가 상단 공지 사항 : 어떤 NP가 완료 NP-로 감소 될 수있다 , 어떤 NP 완성은 NP-하드로 줄일 수있다 P (다항식) 시간에 모든.

P 시간에서 더 어려운 문제 클래스를 해결할 수 있다면, P 시간에서 더 쉬운 모든 문제를 해결하는 방법을 발견했음을 의미합니다 (예 : P = NP 증명). P 시간).

____________________________________________________________
| 문제 유형 | P 시간으로 검증 가능 | P 시간으로 해결 | 난이도 증가
___________________________________________________________ | |
| P | 예 | 예 | |
| NP | 예 | 예 또는 아니오 * | |
| NP- 완료 | 예 | 불명 | |
| NP- 하드 | 예 또는 아니요 ** | 알 수없는 *** | |
____________________________________________________________ V

참고 사항 Yes또는 No항목 :

  • * P이기도 한 NP 문제는 P 시간으로 해결할 수 있습니다.
  • ** NP-Complete이기도 한 NP-Hard 문제는 P 시간으로 확인할 수 있습니다.
  • *** NP- 완전한 문제 (모두 NP-hard의 하위 집합을 형성 함) 일 수 있습니다. 나머지 NP 하드는 그렇지 않습니다.

또한 이 다이어그램이 이러한 유형이 모두 서로 어떻게 일치하는지 보는 데 매우 유용하다는 것을 알았습니다 (다이어그램의 왼쪽 절반에 더 많은주의를 기울이십시오).


나는 당신의 대답과 관련이 있습니다. 별도의 질문으로 요청했지만 여기에 게시하라는 요청을 받았습니다. 여기 좀 도와 주시겠습니까? stackoverflow.com/questions/21005651/…
Srikanth

다항식 시간에 NP- 완전 문제를 해결할 수 있는지 여부는 알 수 없습니다. 또한 NP- 완전 문제는 NP-hard 문제이므로 일부 NP-hard 문제는 다항식 시간으로 확인할 수 있으며 일부는 다항식 시간으로 해결할 수도 있습니다.
포크 Hüffner

이 표는 정확하지 않으며 자기 모순적입니다. 아직 입증되지 않은 NP! = P라고 가정하더라도 여전히 올바르지 않습니다. 예를 들어, NP-Hard 클래스에는 NP-Complete 문제가 포함됩니다. 따라서 귀하의 표는 NP-Complete 문제가 다항식 시간으로 동시에 검증 될 수 있고 다항식 시간으로 검증 될 수 없다고 주장합니다.
Michael

3
@ FalkHüffner 감사합니다. 테이블이 업데이트되었습니다 (벤 다이어그램에서 번역하는 동안 오류가 발생했습니다).
Johnson Wong

1
@PeterRaeves 모든 NP- 완료 문제는 정의상 NP-hard입니다. NP-complete = (NP 및 NP-hard). 그 반대의 경우는 사실이 아닙니다. NP-hard에는 NP-complete 상태가 아닌 문제 (예 : Halting Problem)가 있습니다. "NP (다항식 시간에 해결할 수 없음)"-NP의 의미가 아닙니다. NP는 "비 결정적 다항식"입니다. P의 모든 문제는 NP에도 있습니다. 역수가 참인지 여부는 잘 알려져 있지 않습니다.
Jim Balter 2016 년

73

이것은 질문에 대한 매우 비공식적 인 답변입니다.

3233을 1보다 큰 다른 두 숫자의 곱으로 쓸 수 있습니까? Königsberg7 개 다리를 두 번 밟지 않고 길을 걷는 방법이 있습니까? 다음은 일반적인 특성을 공유하는 질문의 예입니다. 답을 효율적으로 결정하는 방법은 분명하지 않지만 대답이 '예'인 경우 짧고 빠른 증거를 확인할 수 있습니다. 첫 번째 경우에 51의 사소한 인수 분해; 두 번째로, 다리를 걷는 경로 (제한 조건에 적합).

의사 결정 문제는 예와 질문이나 하나 개의 매개 변수 만 변화없이 대답의 모음입니다. COMPOSITE = { " ncomposite": nis is integer} 또는 EULERPATH = { "문제에 그래프 G에 오일러 경로가 있습니까?": G유한 그래프입니다} 라고 말합니다 .

이제 일부 의사 결정 문제는 명백한 알고리즘은 아니지만 효율적입니다. Euler는 250 년 전에 "Königsberg의 7 개 교량"과 같은 문제에 대한 효율적인 알고리즘을 발견했습니다.

반면에 많은 의사 결정 문제의 경우 답을 얻는 방법은 분명하지 않지만 추가 정보를 알고 있다면 정답을 얻는 방법을 분명히 알 수 있습니다. COMPOSITE는 다음과 같습니다 : 시험 분할은 명백한 알고리즘이며 속도가 느립니다. 10 자리 숫자를 고려하려면 100,000 개의 제수와 같은 것을 시도해야합니다. 그러나 예를 들어 누군가 61이 3233의 제수라고 말하면 간단한 긴 나눗셈이 올바른지 알 수있는 효율적인 방법입니다.

복잡도 클래스 NP 는 '예'답변이 상태가 짧고 증거를 빠르게 확인할 수있는 의사 결정 문제의 클래스입니다. 컴포지트처럼. 한 가지 중요한 점은이 정의가 문제가 얼마나 어려운지에 대해 아무 말도하지 않는다는 것입니다. 의사 결정 문제를 해결할 수있는 정확하고 효율적인 방법이 있다면 솔루션의 단계를 적어두면 충분합니다.

알고리즘 연구가 계속되고 새로운 영리한 알고리즘이 항상 만들어집니다. 오늘날 효율적으로 해결하는 방법을 모를 수있는 문제는 내일에 효율적인 (명확하지는 않지만) 솔루션을 제공하는 것으로 판명 될 수 있습니다. 실제로 2002 년 까지 컴포지트에 대한 효율적인 솔루션을 찾기 위해 연구원 들이 필요했습니다! 이 모든 진보와 함께, 우리는 정말로 궁금하게 생각해야합니다. 어쩌면 모든 효율적인 증거라는 것으로 결정의 문제는 효율적인 솔루션을? 아무도 모른다 .

아마도이 분야에서 가장 큰 기여는 독특한 종류의 NP 문제를 발견 한 것이었을 것이다. Stephen Cook은 계산을 위해 회로 모델을 가지고 놀면서 다른 모든 NP 문제 보다 어렵거나 어려운 NP 종류의 결정 문제를 발견했습니다 . 에 대한 효율적인 솔루션 충족 가능성 문제가 에 대한 효율적인 솔루션을 만드는 데 사용할 수있는 다른 NP에 문제가. 얼마 후, Richard Karp은 여러 가지 다른 결정 문제가 동일한 목적을 달성 할 수 있음을 보여주었습니다. NP에서 "가장 어려운"문제인 이러한 문제는 NP- 완전 문제 로 알려졌습니다 .

물론 NP는 의사 결정 문제의 한 종류 일뿐입니다. "N의 요인 찾기", "모든 정점을 방문하는 그래프 G에서 최단 경로 찾기", "다음 부울 식을 참이되게하는 변수 할당 세트를 제공하십시오"와 같은 많은 문제가 자연스럽게 언급되지 않습니다. "NP에서"이러한 문제에 대해 비공식적으로 이야기 할 수도 있지만 기술적으로는 의미가없는 것이 결정 문제가 아닙니다. 이러한 문제 중 일부는 NP- 완전 문제와 동일한 종류의 전력을 가질 수도 있습니다. 이러한 (비 결정적) 문제에 대한 효율적인 솔루션은 모든 NP 문제에 대한 효율적인 솔루션으로 직접 이어질 것입니다. 이와 같은 문제를 NP-hard 라고 합니다.


67

P (다항식 시간) : 이름 자체에서 알 수 있듯이 다항식 시간으로 해결할 수있는 문제입니다.

NP (비 결정적 다항식 시간) : 다항식 시간으로 확인할 수있는 결정 문제입니다. 즉, 특정 문제에 대한 다항식 시간 솔루션이 있다고 주장하면이를 증명하도록 요청하십시오. 그런 다음 다항식 시간으로 쉽게 확인할 수있는 증거를 제공합니다. 이러한 종류의 문제를 NP 문제라고합니다. 여기서 우리는이 문제에 대한 다항식 시간 솔루션이 있는지 여부에 대해 이야기하지 않습니다. 그러나 우리는 다항식 시간에 주어진 문제에 대한 해결책을 검증하는 것에 대해 이야기하고 있습니다.

NP-Hard : NP에서 가장 어려운 문제만큼 어렵습니다. 다항식 시간으로 이러한 문제를 해결할 수 있다면 존재할 수있는 NP 문제를 해결할 수 있습니다. 이러한 문제가 반드시 NP 문제인 것은 아닙니다. 즉, 우리는 다항식 시간에 이러한 문제에 대한 해결책을 확인할 수 있습니다.

NP-Complete : NP와 NP-Hard의 문제점입니다. 즉, 이러한 문제를 해결할 수 있으면 다른 NP 문제를 해결할 수 있으며 이러한 문제에 대한 솔루션을 다항식 시간으로 확인할 수 있습니다.


방금 어딘가에서 정의를 복사하기로 결정 했습니까?
Arun Satyarth

1
대답은 의미가 있습니다!
Konstantin

2
@ArunSatyarth 어디서?
의미 문제

3
가장 좋은 대답은 짧고, 충분한 용어를 사용하고, 정상적인 인간의 문장을 가지고 있습니다 (읽기가 어렵지 않습니다). 놀랍게도 N이 의미하는 것을 쓰는 유일한 대답은 놀랍습니다.
의미 문제

62

다른 훌륭한 답변 외에도 다음은 사람들이 NP, NP-Complete 및 NP-Hard의 차이점을 보여주기 위해 사용 하는 일반적인 스키마입니다 .

여기에 이미지 설명을 입력하십시오


1
NP-Complete에없는 NP-Hard에 문제가 있음이 입증 되었습니까? 이 이미지가 제안하기 때문입니다. 감사합니다.
Hilder Vitor Lima Pereira

9
@VitorLima 예. EXPSPACE- 완전 문제 는 NP- 단단하지만 NP- 완전하지 않은 것으로 입증되었습니다.
Franck Dernoncourt

2
알았어 고마워 나는 그것에 대해 이야기하는 참고 문헌을 발견했습니다. 예를 들면 다음과 같습니다. princeton.edu/~achaney/tmve/wiki100k/docs/NP-hard.html
Hilder Vitor Lima Pereira

47

기술을 익히지 않고 Pv. NP 등을 설명하는 가장 쉬운 방법은 "단어 문제"와 "다중 선택 문제"를 비교하는 것입니다.

"단어 문제"를 해결하려고 할 때 해결책을 처음부터 찾아야합니다. "다중 선택 문제"를 해결하려고 할 때 "단어 문제"와 같이 해결하거나 각 답변을 연결하고 적합한 후보 답변을 선택하십시오.

"복수 선택 문제"는 해당 "단어 문제"보다 훨씬 쉽습니다. 후보 답변을 대체하고 적합한 지 확인하는 것은 처음부터 올바른 답변을 찾는 것보다 훨씬 적은 노력이 필요할 수 있습니다.

이제 우리가 다항식 시간을 "쉬운"소요하는 노력에 동의한다면, 클래스 P는 "쉬운 단어 문제"로 구성되고 클래스 NP는 "쉬운 객관식 문제"로 구성됩니다.

P. NP의 본질은 "단어 문제로는 쉽지 않은 쉬운 객관식 문제가 있습니까?"라는 질문입니다. 즉, 주어진 답변의 유효성을 쉽게 확인할 수 있지만 처음부터 그 답을 찾기가 어려운 문제가 있습니까?

NP가 무엇인지 직관적으로 이해 했으므로 직관에 도전해야합니다. 어떤 의미에서 가장 어려운 "복수 선택 문제"가 있다는 것이 밝혀졌습니다. 만약 그 "가장 어려운"문제 중 하나에 대한 해결책을 찾게되면 ALL에 대한 해결책을 찾을 수있을 것입니다 NP 문제! Cook이이 40 년 전에 발견 한 것은 완전히 놀랍습니다. 이러한 "가장 어려운"문제는 NP- 하드라고합니다. 당신이 그들 중 하나에 "단어 문제 해결"을 찾으면 자동적으로 각각 "모든 쉬운 선택 선택 문제"에 대해 "단어 문제 해결"을 찾을 것입니다!

마지막으로 NP- 완전 문제는 NP와 NP-hard 문제입니다. 우리의 비유에 따르면, 그것들은 동시에 "다중 선택 문제처럼 쉬움"과 "어려움 문제로 가장 어려운 것"입니다.


18

NP- 완전 문제는 NP-Hard 및 복잡성 클래스 NP에있는 문제입니다. 따라서 주어진 문제가 NP- 완전하다는 것을 나타내려면 문제가 NP에 있고 NP-hard라는 것을 보여 주어야합니다.

NP 복잡성 클래스에있는 문제는 다항식 시간으로 비 결정적으로 해결 될 수 있으며 NP 문제에 대한 가능한 솔루션 (즉, 인증서)은 다항식 시간의 정확성을 검증 할 수 있습니다.

k-clique 문제에 대한 비 결정적 솔루션의 예는 다음과 같습니다.

1) 그래프에서 k 개의 노드를 무작위로 선택

2)이 k 개의 노드가 경사를 형성하는지 확인하십시오.

위의 전략은 입력 그래프의 크기에서 다항식이므로 k-clique 문제는 NP에 있습니다.

다항식 시간으로 결정 가능하게 해결할 수있는 모든 문제는 NP에도 있습니다.

문제가 NP-hard임을 보여주는 것은 일반적으로 다항식 시간 매핑을 사용하여 다른 NP-hard 문제를 문제로 축소하는 것입니다. http://en.wikipedia.org/wiki/Reduction_(complexity)


이 답변에서 잘못된 내용을 보지 못했지만 왜 받아 들여 졌는지 모르겠습니다. OP가 요구하는 것에 실제로 많은 것을 제공하지는 않습니다. 실제로 이러한 문제에 대한 표준 설명과 다르지 않으며 이러한 클래스에서 이러한 문제를 일으키는 원인에 대한 명확한 설명은 없습니다. 공감 가치는 없지만 답을 받아 들일 가치는 없습니다.
San Jacinto

18

훨씬 간결하게 대답 할 수 있다고 생각합니다. 나는 대답 관련 질문 답변을 복사했습니다.

그러나 우선 NP- 하드 문제는 다항식 시간 솔루션이 존재한다는 것을 증명할 수없는 문제입니다. 일부 "problem-P"의 NP-hardness는 일반적으로 이미 입증 된 NP-hard 문제를 다항식 시간의 "problem-P"로 변환하여 입증됩니다.

나머지 질문에 대답하려면 먼저 어떤 NP-hard 문제가 NP-complete인지 이해해야합니다. NP 하드 문제가 NP 설정에 속하면 NP 완료입니다. NP 설정에 속하려면 문제는

(i) 결정 문제,
(ii) 문제에 대한 해의 수는 유한해야하며 각 해는 다항식 길이 여야합니다.
(iii) 다항식 길이 해를 주면 문제는 예 / 아니오

이제 NP 설정에 속하지 않고 해결하기 어려운 많은 NP-hard 문제가 있음을 쉽게 알 수 있습니다. 직관적 인 예로, 실제 일정을 찾아야하는 출장 세일즈맨의 최적화 버전은 길이가 <= k 인 일정이 있는지 여부를 결정해야하는 출장 세일즈맨의 의사 결정 버전보다 어렵습니다.


5

이 특정 질문에 대한 정말 좋은 답변이 있으므로 내 자신의 설명을 쓸 필요가 없습니다. 그래서 나는 다른 클래스의 계산 복잡성에 대한 훌륭한 자료를 제공하려고 노력할 것입니다.

계산 복잡도는 P와 NP에 불과하다고 생각하는 사람에게는 다른 계산 복잡성 문제에 대한 가장 철저한 자료 가 있습니다. OP가 요청한 문제 이외에도, 약 500 가지의 서로 다른 계산 문제 클래스와 멋진 설명 및 클래스를 설명하는 기본 연구 논문 목록이 나와 있습니다.


3

내가 이해하는 바와 같이, np-hard 문제는 np-complete 문제 보다 "더 어렵지"않다 . 실제로 정의상 모든 np-complete 문제는 다음과 같습니다.

  1. NP에서
  2. np-hard

여기에 이미지 설명을 입력하십시오

-소개. Cormen, Leiserson, Rivest 및 Stein의 알고리즘 (3ed) 관련, 1069 페이지


3
이해가 잘못되었습니다. NP-complete에 대한 귀하의 정의는 정확하지만 첫 번째 진술과 관련이 없습니다. NP-hard의 모든 문제는 최소한 NP-complete의 문제 만큼 어렵 습니다. 일부 (예를 들어, Halting Problem, 무한히 어렵고 en.wikipedia.org/wiki/EXPSPACE )는 아마도 더 어렵습니다.
Jim Balter

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.