현재 Java Collections API를 배우고 있으며 기본적인 내용을 잘 알고 있지만이 표준 API에 Graph 구현이 포함되지 않은 이유를 알지 못했습니다. 세 가지 기본 클래스는 쉽게 이해할 수 있으며 (List, Set 및 Map) API의 모든 구현은 대부분 간단하고 일관성이 있습니다.Java Collections API에 Graph 구현이 포함되어 있지 않은 이유는 무엇입니까?
주어진 문제를 모델링 할 수있는 잠재적 인 방법으로 그래프가 얼마나 자주 나오는지 고려하면 이는 나에게 의미가 없습니다 (API에 존재할 수 있으며 물론 올바른 위치를 조사하지 않을 수도 있음).). Steve Yegge는 블로그 게시물 중 하나에서 프로그래머는 문제를 공격 할 때 먼저 그래프를 고려해야하며 문제 도메인이 자연적으로이 데이터 구조에 맞지 않으면 대체 구조를 고려해야한다고 제안합니다.
그래프를 나타낼 수있는 보편적 인 방법이 없거나 인터페이스가 유용하여 API 구현에 충분하지 않을 수 있다는 것입니다. 그러나 그래프를 기본 구성 요소 (정점 및 일부 또는 모든 정점을 연결하는 모서리 세트)로 줄이고 그래프가 일반적으로 구성되는 방식 (addVertex (v) 및 insertEdge (v1, v2)과 같은 메소드)을 고려한 경우,) 일반적인 그래프 구현이 가능하고 유용 할 것으로 보인다.
이 점을 이해해 주셔서 감사합니다.
Java API에는 많은 구멍이 있습니다. 그들에게 이유가있을 필요는 없습니다. – skaffman
Java SE API는 추가 빌드를위한 * 기본 * API 만 제공합니다. 이것이 바로 Java SE API를 기반으로 더 많은 특정/편리한 "제 3 자"API가 존재하는 이유입니다. – BalusC