일반적인 그래프에서 삼각형을 세는 것은 시간에 사소하게 수행 될 수 있으며 훨씬 더 빨리하는 것이 어렵다고 생각합니다 (참조 환영). 평면 그래프는 어떻습니까? 그것은에서 할 수있는 다음의 간단한 절차 쇼 O ( N 로그 N ) 시간. 내 질문은 두 가지입니다.
- 이 절차에 대한 참조는 무엇입니까?
- 시간을 선형으로 만들 수 있습니까?
Lipton-Tarjan의 평면 분리기 정리의 알고리즘 적 증거로부터 그래프의 크기에서 시간 선형으로 그래프의 정점을 세 개의 세트 로 분할 하여 하나의 끝 점이있는 모서리가 없도록 할 수 있습니다 A 와 B 의 다른 하나 , S의 크기는 O ( √및A,B모두 2의 상한 크기꼭짓점 수의 3 입니다. 그래프의 삼각형은 모두A내부또는B내부에있거나A∪S의 다른 두 꼭짓점또는B∪S의 다른 두 꼭짓점과 함께S의하나 이상의 꼭짓점을사용합니다. 따라서,이 그래프에 삼각형의 개수 카운트 충분S그리고 이웃S에을(및 유사 대B). 공지 것을S및의-neighbours는 유도K외측 -σ 평면 그래프 (그래프 (가) 직경의 평면 그래프 인 서브 그래프4). 따라서 이러한 그래프에서 삼각형의 수를 세는 것은 동적 프로그래밍 또는 Courcelle의 정리 응용 프로그램을 통해 직접 수행 할 수 있습니다 (Elberfeld 등의 Logspace 세계에 그러한 계산 버전이 존재하고 있음을 알고 있습니다. 방향이없는 삼각형을 형성하는 것은 속성이고, 포함 된 k- 외부 평면 그래프 로부터 제한된 폭 트리 분해가 얻어 지기 때문에 선형 시간 세계에서) .
따라서 우리는 선형 시간 절차를 희생하여 각각 일정한 비율로 작은 문제 쌍으로 문제를 줄였습니다.