728x90
그래프의 표현 방식 2가지
1) ArrayList 타입의 1차원 배열[]
static ArrayList<Integer> A [];
//main에서 사용 시
A = new ArrayList[n+1];
for(int i=1; i<n+1; i++) {
A[i].add(new ArrayList<Integer>());
}
for(int i=0; i<m; i++){
int a = kb.nextInt();
int b = kb.nextInt();
A[a].add(b);
A[b].add(a);
}
2) ArrayList를 갖는 ArrayList<>()
static ArrayList<ArrayList<Integer>> graph;
//main에서
graph = new ArrayList<ArrayList<Integer>>();
for(int i=0; i<=n; i++) {
graph.add(new ArrayList<Integer>());
}
for(int i=0; i<m; i++){
int a= kb.nextInt();
int b =kb.nextInt();
graph.get(a).add(b);
graph.get(b).add(a);
}
728x90
'코딩 테스트 [준비] > JAVA | 활용할 문법 정리' 카테고리의 다른 글
JAVA | 배열 Arrays.sort() 기준 재정의 : Comparator 익명 클래스 구현 (0) | 2023.06.15 |
---|---|
JAVA | 특수문자로 Split(), replaceAll() 사용 시 주의할 점 (0) | 2023.06.14 |
JAVA | 내림차순 정렬 (역순 정렬) | Collections.reverseOrder() (0) | 2023.05.24 |
JAVA | Math 클래스의 유용한 함수 - 제곱근, 제곱 함수 (0) | 2023.05.17 |
JAVA | Character 클래스의 활용 함수들 모음 (0) | 2023.05.17 |