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
- retry
- DP
- Spring
- Kafka
- 알고리즘
- 운영체제
- MST
- 자바
- golang
- MVC
- 쿼리
- 자료구조
- SQL
- JPA
- Spring Boot
- 코딩
- Jenkins
- 페이징
- Intellj
- aws
- PL/SQL
- 클라우드
- Spring Cloud Feign
- 데이터베이스
- 오라클
- Spring Cloud
- db
- feign
- 백준
- 디자인 패턴
Archives
- Today
- Total
justgo_developer
벨만-포드 알고리즘(Bellman-Ford Algorithm) 본문
벨만-포드 알고리즘(Bellman-Ford Algorithm)
single source 문제
음수 가중치가 있고, 음수 사이클이 없는 그래프에서 한정점에서 다른 모든 정점까지의 최단경로 및 거리를 구하는 알고리즘
음수사이클이 있으면 무한히 사이클을 루프할수 있어서 최단경로를 구할수 없다.
단 벨만포드알고리즘의 장점은 그래프내에 음수사이클이 있음을 판단할수 있다.
1. 시작점을 제외한 모든 정점들을 최단거리를 무한대로 설정
2. 그래프 모든 간선에 대해
3. 정점 A에서 B로의 방향을 가지고 있는 각 간선에 대해
현재 정점 B까지의 거리가 정점 A까지의 거리 + 현재 간선의 거리의 합보다 클경우
정점 B의 경로와 거리를 갱신해준다.
4. 이들 경로와 거리의 갱신이 일어나지 않을때까지 반복한다.
만약 정점의 수 만큼의 시행 이후에도 경로와 거리의 갱신이 일어날 경우
음수사이클이 존재한다.
'IT > 알고리즘' 카테고리의 다른 글
| 최소 스패닝 트리(Minimum Spanning Tree, MST) (0) | 2018.02.07 |
|---|---|
| 플로이드 워셜 알고리즘(Floyd-Warshall) (0) | 2018.02.01 |
| 다익스트라 알고리즘(Dijkstra) (0) | 2018.01.31 |
| 위상정렬 (0) | 2018.01.26 |
| heap sort/counting sort/radix sort (0) | 2018.01.26 |