두 사이클에 포함 된 가장 긴 사이클


11

다음은 NP-complete 문제입니까? (그렇습니다).

입력 : 에지 세트가 두 개의 에지 분리 된 간단한 사이클로 분해 될 수있는 무 방향 그래프 ( 입력의 일부 는 아님 ).kN,G=(V,E)

질문 : 길이가 보다 큰 간단한주기가 있습니까?kGk

분명히 문제는 NP에 있고 의 최대 정도 는 이지만 도움이되지 않는 것 같습니다.4G4


1
"한 쌍을 연결하는 최대 4 개의 경로"에 대해서는 옳지 않다고 생각합니다. 참조 : i.imgur.com/mYL4n1V.png
svinja

1
@svinja 맞습니다. 두 정점 쌍 사이에 최대 4 쌍의 가장자리 분리 된 경로가 있다고 말했을 것입니다.
목록

가장 긴 단순주기는 분해 (모든 분해에서) 의 두주기 중 어느 것도 될 수 없기 때문에 제목이 잘못 되었습니다. E
Denis

@dkuper 실제로 두 정점 분리 된 간단한 사이클의 결합을 볼 수 있습니다.
목록

내 요점은 그것이 그들 중 하나가 될 수 없다는 것이 아니라 때로는 그것이 그들 중 하나가 아니라는 것입니다. 따라서 문제는 둘 중 더 큰 것을 찾지 않습니다.
Denis

답변:


2

축소 시도 ....

그래프 해밀턴 경로에서 NPC 인 최대 차수가 3 인 감소 [G & J]G=(V,E)

  • 가장자리의 방향을 무시하고 임의의 노드에서 첫 번째 깊이 (무 방향) 스캔을 사용하여 의 가장자리를 두 개의 고유 (비 방향) 경로 세트 (그림에서 빨간색과 녹색)로 나눕니다 .G
  • 여분의 "연결 노드"(그림 B의 자주색 노드)를 추가하여 빨간색 경로에 연결하고 방향이 지정되지 않은 빨간색 회로를 만듭니다. 여분의 "연결 노드"(그림의 자주색 노드)를 추가하여 녹색 경로에 참여하고 방향이없는 녹색 회로를 만듭니다.
  • 각 원 노드 변환 추가 indegree 1 outdegree 2 (도 C)의 인바운드 노란색 노드 적색 에지 , 및 추가 제 발신 노란색 노드 레드 엣지 ; 마지막으로 추가 번째 바운드 "으로"노드 황색 녹색 에지 주위에 "래핑"로하여 적색 에지 (도 D)의 최 황색 노드 접촉.k a b k b c k b d bbVkabkbckbdb

결과 그래프에서 모든 노란색 노드는 그림 E와 그림 F에 표시된 두 가지 방식으로 간단한 경로로 순회 할 수 있으며 이는 원래 노드 의 유효한 두 순회에 해당합니다 . 비공식적으로 여분의 "연결"자주색 노드를 향한 가장자리가 사용되면 노란색 노드를 통과 할 수 없습니다.b V k3kbVk

  • 비슷한 방식으로 V의 각 원래 노드를 2도 및 1도 변환

충분히 큰 따기결과 그래프 ( 는 원래 그래프 ( 가 해밀턴 경로 (길이 )를 갖는 경우에만 보다 긴 길이의 경로를 갖는다.G 3 k ( | V |1 ) G | V | 1k|V|G3k(|V|1)G|V|1

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

큰 사진은 여기에서 다운로드 할 수 있습니다


이것은 매우 아름다운 증거입니다. 아마도 'A'의 가장자리를 지정하여 경로를 얻는 방법을 더 쉽게 이해할 수 있도록해야합니다 (나는 그것을 이해한다고 생각합니다).
리스팅

@Listing : 경로의 구성은 지시 된 가장자리에 의존하지 않습니다 (실제로 대답에 "무 방향"검색을 썼습니다). 임의의 노드에서 시작하여 먼저 통과 한 모서리를 빨간색으로 채색하여 깊이를 먼저 스캔 한 다음 발견 된 첫 번째 3 개 노드로 역 추적하고 모서리를 통과 한 채 녹색으로 채색하여 깊이를 먼저 스캔합니다. .. 아마도 더 공식적인 정의를 가지고 있지만, 지금 내 마음에 들지 않습니다. 자세한 내용이 필요하면 알려주십시오.
Vor

가장자리가 '정확한'방향으로 이동하는 속성은 마지막 변환에 의해 적용됩니다. 명확하게 해 주셔서 감사합니다.
목록

0

Vor의 답변에서 영감을 얻은 더 간단한 답변을 원합니다.

Itai에 의해 입증 된 그리드 그래프 문제에 대한 해밀턴 사이클 문제로 시작하십시오.

그리드 그래프의 엣지 세트가 두 개의 분리 된 서브 세트 (수평 및 수직)로 분할 될 수 있음을 쉽게 알 수 있습니다.

이제 모든 수평 수평 사이클을 하나의 간단한 사이클로 짜고 모든 수직 수평 사이클을 다른 간단한 사이클로 짜야합니다.

이것은 매우 쉬운 작업입니다. 수직면의 경우 가장 왼쪽에서 가장 오른쪽으로 스윕하고 수직 간격을 연결 한 다음 연속적인 x 좌표 수직선을 연결 한 다음 가장 왼쪽에있는 정점을 가장 오른쪽에있는 정점에 연결하십시오. 수평 가장자리도 비슷하게하십시오.

얻어진 그래프는 여전히 단순하고, 방향이 지정되지 않았으며 요구 사항을 충족시킨다. 수직 위상과 수평 위상의 마지막 단계에서 두 개의 다른 정점 쌍을 다루기 때문에 간단합니다.

이제 Vor와 비슷한 트릭을 수행하십시오. 각 정점에서 원래의 인시던트 에지 각각에 새로운 정점을 추가하십시오 . 평소처럼 ahouls는 충분히 커야합니다. 마지막으로, 정품 해밀턴 사이클의 길이는. 그러나 물론 이것은 얻은 그래프의 Hamiltonian이 아닙니다.kk2k|V|

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