jung implementation of directed graph에 주어진 정점에서 가장 먼 점 K를 찾고 싶습니다.그래프의 정점에서 가장 먼 점 edu.uci.ics.jung
나는 BFSDistanceLabeler이 작업을 수행한다고 가정합니다. 그러나, 그것은 K 가장 먼 지점을 반환하는 API를 제공하지 않기 때문에 그래프의 모든 꼭지점을 가로 지르고 getDistance 메소드를 호출하여 수동으로해야 할 것입니다. 아니면 더 좋은 방법이 있습니까?
그러나 더 큰 도전이 있습니다. 그래프가 지시된다는 사실에도 불구하고, 나는 그것을 거리 라벨러에 대한 방향이없는 것으로 취급하고 싶다. 어떻게 든 감독 그래프에서 방향없는 버전으로 빠르게 전환 할 수 있습니까?
왜 그래프를 무향으로 처리해야합니까?
필자는 필연적 인 단계에서 매우 큰 네트워크 (정점의 수백만)를 분석합니다. 모든 단계에서 네트워크의 작은 부분 (수천 개의 정점)이 그래프로로드되고 분석됩니다. 이 분석에는 유향 그래프가 필요하며로드 된 영역의 중앙에 위치해야하는 특정 꼭지점에 대한 결과를 제공합니다.
단계 A에서 단계 B로 이동하면 이전 그래프 전체를 삭제하고 새 그래프를 만들 수 있습니다. 그럼에도 불구하고 이것은 매우 시간 소모적 일 것입니다. 새로운 관심 정점이 이전 정점에 가깝기 때문에 그래프의 큰 부분을 재사용 할 수 있습니다.
그래서 새로운 주요 정점에 가장 가까운 정점 K 개를 제거하고이 정점 주변의 새로운 정점으로 바꿔야합니다.
아래 그림을 그래프로 살펴보고 꼭지점 1이 관심의 꼭지점이라고 말할 수 있습니다. 그래프는 방향성이 있기 때문에 6 번이 가장 멀리 떨어져있다. 그러나 그래프가 방향이없는 것으로 취급되면 꼭짓점 번호 4가 가장 멀리 떨어져서 필요한 것입니다.
대단히 감사합니다. getVerticesInOrderVisited 메서드는 후계자를 이웃으로 대체하는 제안뿐만 아니라 내가 찾고있는 것입니다. 큰! 고마워요 :) – Michal