최단 경로(Shortest Paths)

2023. 2. 24. 18:17·Algorithm
728x90
반응형
SMALL

최단경로

  • 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미합니다.
  • 다양한 문제 상황
  • 각 지점은 그래프에서 노드(Vertex)로 표현
  • 지점 간 연결된 도로는 그래프에서 간선(Edge)으로 표현

※조건

1. 유향 그래프

노드(Vertex)와 노드 사이에는 방향성이 있는 간선(Edge)이 주어져야 하며, 무향 그래프인 경우에는 각 간선에 대해 양쪽으로 유향 간선이 있는 유향 그래프로 생각할 수 있다. 즉, 무향 간선(u, v)는 유향 간선 (u, v)와 (v, u)를 의미한다고 가정한다. 무향인 경우에는 최단 경로를 구할 수 없다.

 

2. 간선 가중치

노드와 노드 사이의 간선에는 무조건 가중치가 부여되어야 한다.

 

※두 정점 사이의 최단 경로

1. 두 정점 사이의 경로들 중 간선의 가중치 합이 최소인 경로

2. 간선 가중치의 합이 음인 싸이클이 있으면 문제가 정의되지 않는다.

 

※단일 시작점 최단경로

1. 단일 시작점으로부터 각 정점에 이르는 최단경로를 구한다.

다시말해, 그래프의 시작점이 주어진다는 의미이다.

▶ 다익스트라 알고리즘

음의 가중치를 허용하지 않는 최단 경로

가중치(weigt)는 0보다 커야 한다.

▶ 벨만-포드 알고리즘

음의 가중치를 허용하는 최단 경로

가중치(weigt)는 음수일 수 있다. (최단경로는 가중치가 낮을수록 이득이기 때문에 '+'가 손해, '-'는 이득)

▶ 싸이클이 없는 그래프의 최단 경로

 

※모든 쌍 최단경로

1. 모든 정점 쌍 사이의 최단경로를 구한다.(시작점이 주어지지 않는다)

▶ 플로이드-워샬 알고리즘

 

 

 

728x90
반응형
LIST

'Algorithm' 카테고리의 다른 글

Graph Algorithm(플로이드-워샬 알고리즘)  (1) 2023.03.02
Graph Algorithm(벨만-포드 알고리즘)  (0) 2023.03.01
Graph Algorithm(다익스트라 알고리즘)  (0) 2023.02.24
Union-find Data Structure(트리를 이용한 처리)  (0) 2023.02.22
Union-find Data Structure(연결 리스트를 이용한 처리)  (0) 2023.02.22
'Algorithm' 카테고리의 다른 글
  • Graph Algorithm(벨만-포드 알고리즘)
  • Graph Algorithm(다익스트라 알고리즘)
  • Union-find Data Structure(트리를 이용한 처리)
  • Union-find Data Structure(연결 리스트를 이용한 처리)
알파 조
알파 조
공부 일기장
  • 알파 조
    Blue Ocean
    알파 조
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • Algorithm (9)
      • Data Structure (3)
      • Python (7)
      • 컴퓨터 구조 요약 (6)
      • 몰입 교육 (7)
      • JavaScript (1)
      • Vue.js (7)
      • 코딩테스트 연습 (40)
      • SpringBoot (9)
      • 데이터베이스 (2)
  • 블로그 메뉴

    • Home
    • Computer structure
    • Algorithm
    • SpringBoot
    • Vuejs
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    티스토리챌린지
    잔디 기부
    오블완
    잔디 기부 캠페인
    항해99
    Git
    MSA 기초
    Udemy#Python#Bootcamp#Object and Data Structure Basics
    리그오브레전드 #롤 #LOL #60프레임 버그 #GPU #윈도우10 #롤 60프레임 고정
  • hELLO· Designed By정상우.v4.10.3
알파 조
최단 경로(Shortest Paths)
상단으로

티스토리툴바