2016-10-28 2 views
1

인접 목록을 사용하여 Java에서 지시 가중 에지 그래프를 구현하려고합니다. 정점의 수와 동일한 크기의 배열로 구성되며, 배열의 각 항목은 각각 Vertex의 후속 자의 LinkedList입니다.자바 인접리스트 가중치가 적용된 가장자리가있는 그래프 구현

나는 나는 또한 내가 나중에 사용하기 위해 Vertex마다 다른 변수를 추가 할의 LinkedListsuccessor 객체에 가중치 라벨을 추가하여이 일을 생각하고 있었는데, 각각의 가장자리에 무게를 추가 할. 이 작업을 수행하려면 정점에 대한 새로운 데이터 구조를 만들고 인접성 목록으로 별도의 데이터 구조를 만들어야합니다. 두 가지를 단일 데이터 구조로 결합하는 효율적인 설계는 무엇입니까?

답변

2

그래프를 HashMap으로 나타내야합니다. 여기서 key는 정점의 레이블이고 value는 정점 개체입니다.

HashMap<String,Vertex> graph = new HashMap<String,Vertex>(); 

꼭지점 정점 attributes.There 무게 인접한 꼭지점에 대한 속성의 HashMap 것이다 캡슐화 클래스이다.

Vertex 클래스를 통해 그래프에 더 많은 기능과 속성을 추가 할 수 있습니다.

관련 문제