문제

Planar 3 연결 그래프의 그래프 isomorphism의 주제에 대한 연구를 수행했지만 다양한 제한, 이론적 복잡성 및 사용 빈도의 풍부함이 풍부합니다.밖으로 :

  • 이해하기 쉽습니다
  • 는 최대 선명도로 구현 될 수 있습니다
  • 작은 그래프에서 좋은 실질적인 성능 (수십의 정점까지)

이 문제 또는 더 새로운,보다 일반적인 것들 중 하나를 통해 더 나은 특수화 된 알고리즘 중 하나와 더 잘 꺼져 있는지 여부를 나에게 더 나은 것으로 알지 못하지 않고도 알 수없는 것은 어렵습니다. 가능한 모든 후보자들 중 어느 것이 가장 좋습니다.

도움이 되었습니까?

해결책

Weinberg의 알고리즘이 청구서에 맞는 것 같습니다.

  • 이해하기 쉽습니다 : 회전 시스템 평면성 테스트 알고리즘. G와 H는 3 연결이기 때문에, 이들 회전 시스템은 G 및 H가 isomorphic 인 경우에만 시계 방향 및 반 시계 방향으로 교환하는 것까지 이소 맵핑 업이다. G에서 DART (= 표시된 방향으로 가장자리) D를 선택하고 H에서 모든 DARTS E로 매핑 해보십시오 (그리고 다른 방향으로 반복하십시오). G가 연결되므로 다른 다트 D '는 G를 위해 회전 시스템의 두 작업을 구성하여 D로부터 도달 할 수 있습니다. E를 E에 적용하고 isomorphism이 있는지 여부를 확인하십시오.

  • 최대 선명도 : 평면성 테스트 외에도 위의 코드는 코드입니다. 다른 사람의 평면성 테스트를 재사용 할 수 있습니까? 예를 들어 부스트가 있습니다. 그렇지 않다면, 나는 여전히 당신의 자신만의 시행보다 더 쉬운 것이라고 생각합니다.

  • 작은 그래프에서 실질적인 실적 성능 : 평면성 테스트 후 Weinberg의 알고리즘은 기본적으로 각 다트에 대한 두 가지 동기화 된 깊이 첫 번째 순전입니다. 총 주행 시간은 숨어있는 큰 상수가없는 o (| v | 2 )입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top