[Algorithm] / [Python] 동적 계획법 (Dynamic Programming)
·
Python/알고리즘 & 자료구조
1. DP (Dynamic Programming) 란? 복잡한 문제를 여러 개의 작은 부분 문제 (Sub-Problem)로 나누어 해결하는 방법 ! (작은 문제에서 구한 답을 다시 그것을 포함하는 큰 문제에서 사용) 한번 계산한 문제는 다시 계산하지 않도록 하는 방법 ! 대표적인 예시로 피보나치 수열이 있습니다. 피보나치 수열은 N번째의 값 = N-1 번째의 값 + N-2 번째의 값을 계산하는 수열입니다. 위 그림처럼 분할하여 답을 구하는데, 중간에 중복 호출이 발생하기 떄문에 Memoization 기법을 사용합니다. Memoization 이란? 프로그래밍 할 때, 반복되는 결과를 메모리에 저장하여 중복호출 되었을 때, 한 번 더 계산하지 않고 메모리에 저장되어 있는 것을 가져와서 재활용 하는 기법 입니..
[Level 2] / [Python] 배달 - 다익스트라 (Dijkstra)
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/12978 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 다익스트라 알고리즘을 적용하여 해결 import heapq def dijkstra(dis, visited): heap = [] heapq.heappush(heap, [0, 1]) while heap: cost, node = heapq.heappop(heap) for c, n in visited[node]: if cost + c < dis[n]: dis[n] = cost + c heapq.heapp..
[Algorithm] / [Python] 다익스트라 (Dijkstra)
·
Python/알고리즘 & 자료구조
1. 다익스트라 (Dijkstra) ? 최단 경로를 구하는데 사용되는 알고리즘 중 하나입니다. 즉, 한 지점에서 다른 한 지점까지의 최단 경로 한 지점에서 다른 모든 지점까지의 최단 경로 모든 지점에서 다른 모든 지점까지의 최단 경로를 구하는 알고리즘입니다. 자료구조로는 Graph를 사용하며, 노드(vertex)와 경로 또는 거리 는 간선(edge)을 사용하여 실제 거리를 표현합니다. 2. 다익스트라 알고리즘의 과정 다익스트라 알고리즘은 매번 가장 거리가 짧은 노드를 선택해서 정해진 경로에 따라 과정을 계속적으로 반복하게 됩니다. 출발 노드를 지정 최단 거리 리스트 초기화 (매번 최단 기록 갱신) 방문하지 않은 노드 중 가장 거리가 짧은 노드 선택 해당 노드 방문 후 다른 노드로 가는 거리를 계산 후 최..
[Chapter 4] 구현 (Implementation)
·
BOOK/이것이 코딩 테스트다
보호되어 있는 글입니다.
[Ubuntu] Terminator
·
Dev/Linux
Terminal에서 창을 나누는 것이 불편하여 Terminator를 설치하여 해결하였습니다. 1. Install sudo apt install terminator 2. Activate 3. Setting 우클릭 \(\rightarrow\) Preferences 개인 취향에 맞게 세팅합니다. 4. Key 수직 분할 : Ctrl + Shift + E 수평 분할 : Ctrl + Shift + O 창 닫기 : Ctrl + Shift + W 터미널 내 검색 : Ctrl + Shift + F 이동 : Alt + 방향키 터미널 크기 조정 : Ctrl + Shift + 방향키 탭 이동 : Ctrl + PageUp / PageDown 참고 사이트 Ubuntu) Terminator 설치 및 사용법 Intro Termina..
[Android Studio] 카메라 캡쳐가 작동하지 않을 때
·
Dev/Android Studio
Android 11에서 카메라를 사용하려고 할 때 반응이 없는 현상이 발생했습니다. 이것의 해결 방법은 여기에서 발견할 수 있었습니다. 해결 방법 AndroidManifest.xml 에 다음을 추가합니다.