일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DP
- python자료형
- 인스타
- c언어 제어문
- python기본
- 그리디
- Workbench
- 백준
- 5장
- 파이썬 알고리즘 인터뷰
- c언어
- 운체 1주차
- git오류
- 데베시 1주차
- 스택
- 코딩테스트
- Git
- git 오류
- 참고X
- 도커
- #코린이 #코딩 #할 수 있다
- 1주차(1)
- c언어 기본
- git기초
- 인텔리제이
- 4장
- python기초
- 코테
- 최단거리
- 자료구조
- Today
- Total
목록CS/알고리즘 (9)
하루살이 개발자
최단 경로 알고리즘이란, 주어진 노드와 간선(edge)들 중, 가장 짧은 경로를 찾는 알고리즘입니다. 즉, 서울에서 인천, 대전, 광주, 부산을 갈 수 있는 가장 짧은 경로를 찾는 것입니다. 0. 최단 경로 문제 - 다익스트라 알고리즘 이용(BFS 너비 우선 탐색) - "우선 순위 큐( 최소 힙 방식)"을 이용하여, 시간 복잡도 O(nlogn) - 이동경로가 양수라 하면 Dijkstra 알고리즘, 음수를 포함한다면 Bellman-ford 알고리즘 사용! * 다익스트라 알고리즘 1. 출발 노드를 설정 2. 최단 거리 테이블을 초기화(그러므로 최단 거리를 기록할 테이블을 정의해야 함) 3. 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택(방문하지 않은 노드를 체크해야 하므로 이를 위한 테이블을..
섬의 개수 문제: https://leetcode.com/problems/number-of-islands/ Number of Islands - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Solution class Solution: def numIslands(self, grid: List[List[str]]) -> int: def dfs(i, j): # 땅이 아닌 경우 종료 if i = len(grid) or \ j = len..