Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- daily challenge
- 스택
- 리트코드 자바
- Java
- 프로그래머스 java
- 카카오
- 코딩테스트
- java 프로그래머스
- leetcode
- 구현
- 리트코드 1557
- 백준 16935
- 자바 5464
- 코테
- leetcode 1721
- 백준 18222
- 인텔리제이 에러
- 리트코드
- dfs
- 백준
- 파이썬
- 자바
- BFS
- 자바 리트코드
- 분할정복
- java leetcode
- DP
- 프로그래머스
- 스프링 에러
- 그래프 자바
Archives
- Today
- Total
레벨업 일지
[Java] leetcode 1466. Reorder Routes to Make All Paths Lead to the City Zero 본문
알고리즘/leetcode
[Java] leetcode 1466. Reorder Routes to Make All Paths Lead to the City Zero
24시간이모자란 2023. 3. 24. 11:29문제
https://leetcode.com/problems/reorder-routes-to-make-all-paths-lead-to-the-city-zero/
풀이
풀이 알고리즘은 다음과 같다.
- 주어진 방향 그래프를 정방향, 역방향으로 구현한다.
- 정방향 탐색은 ans +=1 해준다.
- 역방향 탐색은 그냥 진행한다.
- ans 를 리턴한다.
문제에서 0이아닌 모든 정점은 정점 0 과 이어져있다 했음으로 단순히 정점 0 에서 dfs 탐색을 하였다.
코드
class Solution {
int ans;
ArrayList<ArrayList<Integer>> g;//in order
ArrayList<ArrayList<Integer>> rg;//reverse graph
public int minReorder(int n, int[][] connections) {
g = new ArrayList<>();
rg = new ArrayList<>();
boolean[] v = new boolean[n];
for(int i = 0 ;i < n ;i++){
g.add(new ArrayList<>());
rg.add(new ArrayList<>());
}
for(int x[] : connections){
g.get(x[0]).add(x[1]);
rg.get(x[1]).add(x[0]);
}
v[0] = true;
dfs(0, v);
return ans;
}
public void dfs(int start,boolean[]v){
for(int nv : g.get(start)){
if(!v[nv]){
v[nv] = true;
ans++;
dfs(nv, v);
}
}
for(int nv : rg.get(start)){
if(!v[nv]){
v[nv] = true;
dfs(nv, v);
}
}
}
}
'알고리즘 > leetcode' 카테고리의 다른 글
[Java] leetcode 15. 3Sum (0) | 2023.03.30 |
---|---|
[Java] leetcode 2316. Count Unreachable Pairs of Nodes in an Undirected Graph (0) | 2023.03.25 |
[Java] leetcode 1319. Number of Operations to Make Network Connected (2) | 2023.03.24 |
[Java] leetcode 2492. Minimum Score of a Path Between Two Cities (0) | 2023.03.23 |
[Java] leetcode 605. Can Place Flowers (0) | 2023.03.20 |
Comments