최단경로 WEEK. 02 2022.04.17 TIL 최단 경로 문제 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미함. ex. 1) 한 지점에서 다른 한 지점까지의 최단 경로 2) 한 지점에서 다른 모든 지점까지의 최단 경로 3) 모든 지점에서 다른 모든 지점까지의 최단 경로 다익스트라 최단 경로 알고리즘 특정 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산함. 다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상... 최단경로최단경로 [BOJ] 1800번: 인터넷 설치 이분 탐색 + 다익스트라! 정답이 될 수 있는 값을 이분 탐색으로 정한 후, 검증위해 다익스트라를 활용 이분탐색 left는 정답이 될 수 있는 최솟값 0, right는 정답이 될 수 있는 최댓값으로 설정(입력 시, 미리 받아놓음) 중간값으로 다익스트라connectOK()를 돌림 유효하다면, 일단 답으로 설정하고 범위를 좀 더 작은값으로 해서 다시 검사 아니라면, 좀 더 큰 범위에서 다시 검사... 최단경로이분탐색이분탐색 [알고리즘] 백준 11403 - 경로찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. 첫째 줄에 정점의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄부터 N개 줄에는 그래프의 인접 행렬이 주어진다. i번째 줄의 j번째 숫자가 1인 경우에는 i에서 j로 가는 간선이 존재한다는 뜻이고, 0인 경우는 없다는 뜻이다. i번째 줄... 알고리즘플로이드최단경로알고리즘 OJ 1726 : 로봇 - C++ 핵심 board[dir][r][c]를 사용해서 보드판의 입장에서 어떤 방향을 가지고 있는지에 따라 최소 값 갱신 cost를 비교할 때 같은 cost를 가지면 반드시 continue로 넘겨줘야 한다 --> 그렇지 않으면 무조건 무한루프에 빠진다 출발지점과 도착지점이 같은 경우 예외처리 right / left 회전 중 최소 회전을 찾는 diffDir 정의 느낀 점 프로그래머스의 활주로 건설 이라... 시뮬레이션boj최단경로BFSgoldBFS [백준] 11404번 - 플로이드 n(2 ≤ n ≤ 100)개의 도시가 있다. 그리고 한 도시에서 출발하여 다른 도시에 도착하는 m(1 ≤ m ≤ 100,000)개의 버스가 있다. 각 버스는 한 번 사용할 때 필요한 비용이 있다. 모든 도시의 쌍 (A, B)에 대해서 도시 A에서 B로 가는데 필요한 비용의 최솟값을 구하는 프로그램을 작성하시오. 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그... 최단경로플로이드워셜baekjoonalgorithmalgorithm 다익스트라 알고리즘 with python 다익스트라 알고리즘은 최단거리를 구하는 알고리즘입니다. 다익스트라 알고리즘을 사용하면, 하나의 노드에서 다른 모든 노드까지의 거리를 구할 수 있습니다. 다익스트라 알고리즘의 원리 다익스트라 알고리즘은 아래의 두 문장으로 정리될 수 있습니다. 최단거리를 구할 노드에서 시작하여, 거리가 입력된 노드 중 최단거리가 가장 작은 노드를 돌아가며 선택합니다. 노드를 돌아가면서, 더 거리가 나오면 값을 ... 최단경로그래프알고리즘다익스트라그래프 최단 경로_다익스트라 가장 짧은 경로를 찾는 알고리즘 각 지점은 그래프에서 노드로 표현 특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로 계산 다익스트라 알고리즘은 그리디 알고리즘으로 분류 매 상황에서 가장 비용이 적은 노드를 선택해 임의의 과정을 반복 다익스트라 알고리즘 동작 과정 살펴보기 그리디 알고리즘: 매 상황에서 방문하지 않은 가장 비용이 적은 노드를 선택 단계를 거치며 한 번 처리된 노드의 최... 알고리즘다익스트라최대 힙heap우선순위 큐최소 힙힙최단경로heap 항해99, 다익스트라 알고리즘 항해 99, 알고리즘 4주차 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 다익스트라 다익스트라(Dijkstra) 알고리즘이란? 다익스트라 알고리즘은 그래프 상에서 시작 정점부터 나머지 각 정점까지의 최단거리를 계산하는 알고리즘이다. 다익스트라 알고리즘은 그래프의 어느 간선의 가중치라도 음수가 있으면 안된다. 다익스트라 알고리즘을 구현하기 위해서는 다음과 같은 과정을 반복하... dijkstra최단경로다익스트라dijkstra 항해99, 5주차 네트워크 딜레이 타임 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 이론 정리 포스팅 글(내 벨로그) 2. 문제 You are given a network of n nodes, labeled from 1 to n. You are also given times, a list of travel time... 최단경로다익스트라다익스트라 항해99, 5주차 K 경유지 내 가장 저렴한 항공권 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 이론 정리 포스팅 글(내 벨로그) 2. 문제 There are n cities connected by some number of flights. You are given an array flights where flights[i] ... 최단경로다익스트라다익스트라 항해99, 5주차 플로이드워셜 알고리즘 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 📌 플로이드-워셜(Floyd-Warshall) 알고리즘이란? 모든 최단 경로를 구하는 알고리즘 다익스트라는 하나의 정점에서 다른 모든 정점까지의 최단 거리를 구하는 알고리즘(S.S.S.P - Single Source Shortest... 플로이드워셜최단경로최단경로 백준 1753 - 최단경로(골드 5) 백준 1753 - 최단경로 다익스트라 알고리즘 기본 문제이다. 최단경로를 구하는 문제이다. 최단경로 알고리즘을 사용한다. 정점의 개수는 최대 20000개, 간선의 개수는 최대 300000개나 된다. 따라서 O(VE)인 벨만포드 알고리즘을 사용하면 시간 초과가 난다. 그리고 하나의 시작 정점에서의 최단경로이므로, 플로이드-워셜 알고리즘보다는 다익스트라 알고리즘이 적합하다. 구현 방법으로는 인접... 알고리즘백준1753최단경로다익스트라 알고리즘1753 [최단경로] 정확한 순위 이코테 책 387p 시간제한 1초 입력 첫째줄에 학생의 수 N과 두 학생의 성적을 비교한 횟수 M 2 <= N <= 500 2 <= M <= 10,000 둘째줄에 M개의 각 줄에는 두 학생의 성적을 비교한 결과를 나타내는 두 양의 정수 A와 B. (A번 학생의 B번보다 낮다는 뜻) 출력 성적순위를 정확히 알 수 있는 학생이 몇 명인지 출력 선생님은 성적을 비교한 결과의 일부만 가지고 있다. ... 이코테최단경로이코테 다익스트라 알고리즘이란 무엇인가? 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택합니다. 해당 노드를 거쳐 다른 노드로 가는 비용을 계산하여 최단 거리 테이블을 갱신합니다. 최단 거리 테이블 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드인 1번 노드를 처리합니다. 방문하지 않은 노드(2, 3, 4, 5, 6) 중에서 최단 거리가 가장 짧은 노드인 4번 노드를 처리합니다. 현재까지 1에서 4번까지의 최단... 그래프알고리즘다익스트라GraphalgorithmShortest Pathdijkstra최단경로Graph 플로이드 워셜(Floyd-Warshall) 알고리즘이란 무엇인가? 모든 노드에서 다른 모든 노드까지의 최단 경로를 구하고자 할 때 사용하는 알고리즘입니다. 다익스트라 알고리즘과 마찬가지로 거쳐 가는 노드를 기준으로 알고리즘을 수행합니다. 2차원 테이블에 최단 거리 정보를 저장합니다. O(N^3) O(N3)의 시간복잡도를 가집니다. 각 단계마다 특정한 노드 k를 거쳐 가는 경우를 확인합니다. D_{ab} = min(D_{ab}, D_{ak} + D_{kb})... 그래프알고리즘워셜플로이드GraphalgorithmShortest Pathfloyd-warshall플로이드워셜최단경로Graph
WEEK. 02 2022.04.17 TIL 최단 경로 문제 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미함. ex. 1) 한 지점에서 다른 한 지점까지의 최단 경로 2) 한 지점에서 다른 모든 지점까지의 최단 경로 3) 모든 지점에서 다른 모든 지점까지의 최단 경로 다익스트라 최단 경로 알고리즘 특정 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산함. 다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상... 최단경로최단경로 [BOJ] 1800번: 인터넷 설치 이분 탐색 + 다익스트라! 정답이 될 수 있는 값을 이분 탐색으로 정한 후, 검증위해 다익스트라를 활용 이분탐색 left는 정답이 될 수 있는 최솟값 0, right는 정답이 될 수 있는 최댓값으로 설정(입력 시, 미리 받아놓음) 중간값으로 다익스트라connectOK()를 돌림 유효하다면, 일단 답으로 설정하고 범위를 좀 더 작은값으로 해서 다시 검사 아니라면, 좀 더 큰 범위에서 다시 검사... 최단경로이분탐색이분탐색 [알고리즘] 백준 11403 - 경로찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. 첫째 줄에 정점의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄부터 N개 줄에는 그래프의 인접 행렬이 주어진다. i번째 줄의 j번째 숫자가 1인 경우에는 i에서 j로 가는 간선이 존재한다는 뜻이고, 0인 경우는 없다는 뜻이다. i번째 줄... 알고리즘플로이드최단경로알고리즘 OJ 1726 : 로봇 - C++ 핵심 board[dir][r][c]를 사용해서 보드판의 입장에서 어떤 방향을 가지고 있는지에 따라 최소 값 갱신 cost를 비교할 때 같은 cost를 가지면 반드시 continue로 넘겨줘야 한다 --> 그렇지 않으면 무조건 무한루프에 빠진다 출발지점과 도착지점이 같은 경우 예외처리 right / left 회전 중 최소 회전을 찾는 diffDir 정의 느낀 점 프로그래머스의 활주로 건설 이라... 시뮬레이션boj최단경로BFSgoldBFS [백준] 11404번 - 플로이드 n(2 ≤ n ≤ 100)개의 도시가 있다. 그리고 한 도시에서 출발하여 다른 도시에 도착하는 m(1 ≤ m ≤ 100,000)개의 버스가 있다. 각 버스는 한 번 사용할 때 필요한 비용이 있다. 모든 도시의 쌍 (A, B)에 대해서 도시 A에서 B로 가는데 필요한 비용의 최솟값을 구하는 프로그램을 작성하시오. 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그... 최단경로플로이드워셜baekjoonalgorithmalgorithm 다익스트라 알고리즘 with python 다익스트라 알고리즘은 최단거리를 구하는 알고리즘입니다. 다익스트라 알고리즘을 사용하면, 하나의 노드에서 다른 모든 노드까지의 거리를 구할 수 있습니다. 다익스트라 알고리즘의 원리 다익스트라 알고리즘은 아래의 두 문장으로 정리될 수 있습니다. 최단거리를 구할 노드에서 시작하여, 거리가 입력된 노드 중 최단거리가 가장 작은 노드를 돌아가며 선택합니다. 노드를 돌아가면서, 더 거리가 나오면 값을 ... 최단경로그래프알고리즘다익스트라그래프 최단 경로_다익스트라 가장 짧은 경로를 찾는 알고리즘 각 지점은 그래프에서 노드로 표현 특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로 계산 다익스트라 알고리즘은 그리디 알고리즘으로 분류 매 상황에서 가장 비용이 적은 노드를 선택해 임의의 과정을 반복 다익스트라 알고리즘 동작 과정 살펴보기 그리디 알고리즘: 매 상황에서 방문하지 않은 가장 비용이 적은 노드를 선택 단계를 거치며 한 번 처리된 노드의 최... 알고리즘다익스트라최대 힙heap우선순위 큐최소 힙힙최단경로heap 항해99, 다익스트라 알고리즘 항해 99, 알고리즘 4주차 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 다익스트라 다익스트라(Dijkstra) 알고리즘이란? 다익스트라 알고리즘은 그래프 상에서 시작 정점부터 나머지 각 정점까지의 최단거리를 계산하는 알고리즘이다. 다익스트라 알고리즘은 그래프의 어느 간선의 가중치라도 음수가 있으면 안된다. 다익스트라 알고리즘을 구현하기 위해서는 다음과 같은 과정을 반복하... dijkstra최단경로다익스트라dijkstra 항해99, 5주차 네트워크 딜레이 타임 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 이론 정리 포스팅 글(내 벨로그) 2. 문제 You are given a network of n nodes, labeled from 1 to n. You are also given times, a list of travel time... 최단경로다익스트라다익스트라 항해99, 5주차 K 경유지 내 가장 저렴한 항공권 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 이론 정리 포스팅 글(내 벨로그) 2. 문제 There are n cities connected by some number of flights. You are given an array flights where flights[i] ... 최단경로다익스트라다익스트라 항해99, 5주차 플로이드워셜 알고리즘 Today I learned 회고록 항해 99, 알고리즘 4주차(항해 5주차) 교재 : 파이썬 알고리즘 인터뷰 / 이것이 코딩테스트다(동빈좌) 최단경로 1. 이론 📌 플로이드-워셜(Floyd-Warshall) 알고리즘이란? 모든 최단 경로를 구하는 알고리즘 다익스트라는 하나의 정점에서 다른 모든 정점까지의 최단 거리를 구하는 알고리즘(S.S.S.P - Single Source Shortest... 플로이드워셜최단경로최단경로 백준 1753 - 최단경로(골드 5) 백준 1753 - 최단경로 다익스트라 알고리즘 기본 문제이다. 최단경로를 구하는 문제이다. 최단경로 알고리즘을 사용한다. 정점의 개수는 최대 20000개, 간선의 개수는 최대 300000개나 된다. 따라서 O(VE)인 벨만포드 알고리즘을 사용하면 시간 초과가 난다. 그리고 하나의 시작 정점에서의 최단경로이므로, 플로이드-워셜 알고리즘보다는 다익스트라 알고리즘이 적합하다. 구현 방법으로는 인접... 알고리즘백준1753최단경로다익스트라 알고리즘1753 [최단경로] 정확한 순위 이코테 책 387p 시간제한 1초 입력 첫째줄에 학생의 수 N과 두 학생의 성적을 비교한 횟수 M 2 <= N <= 500 2 <= M <= 10,000 둘째줄에 M개의 각 줄에는 두 학생의 성적을 비교한 결과를 나타내는 두 양의 정수 A와 B. (A번 학생의 B번보다 낮다는 뜻) 출력 성적순위를 정확히 알 수 있는 학생이 몇 명인지 출력 선생님은 성적을 비교한 결과의 일부만 가지고 있다. ... 이코테최단경로이코테 다익스트라 알고리즘이란 무엇인가? 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택합니다. 해당 노드를 거쳐 다른 노드로 가는 비용을 계산하여 최단 거리 테이블을 갱신합니다. 최단 거리 테이블 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드인 1번 노드를 처리합니다. 방문하지 않은 노드(2, 3, 4, 5, 6) 중에서 최단 거리가 가장 짧은 노드인 4번 노드를 처리합니다. 현재까지 1에서 4번까지의 최단... 그래프알고리즘다익스트라GraphalgorithmShortest Pathdijkstra최단경로Graph 플로이드 워셜(Floyd-Warshall) 알고리즘이란 무엇인가? 모든 노드에서 다른 모든 노드까지의 최단 경로를 구하고자 할 때 사용하는 알고리즘입니다. 다익스트라 알고리즘과 마찬가지로 거쳐 가는 노드를 기준으로 알고리즘을 수행합니다. 2차원 테이블에 최단 거리 정보를 저장합니다. O(N^3) O(N3)의 시간복잡도를 가집니다. 각 단계마다 특정한 노드 k를 거쳐 가는 경우를 확인합니다. D_{ab} = min(D_{ab}, D_{ak} + D_{kb})... 그래프알고리즘워셜플로이드GraphalgorithmShortest Pathfloyd-warshall플로이드워셜최단경로Graph