본문 바로가기

Algorithm9

작업 할당 최적화를 위한 헝가리안 알고리즘 (Hungarian Matching Algorithm) 헝가리안 (Hungarian) 알고리즘은 1955년 Harold Kuhn 에 의해 개발 및 발표되었으며, 이 알고리즘이 두 명의 헝가리 수학자 Dénes Kőnig 와 Jenő Egerváry 의 초기 연구에 크게 기반을 두고 있기 때문에 "헝가리안 방법"이라는 이름을 붙였습니다.헝가리안 알고리즘은 어디에 사용될까?헝가리안 매칭 알고리즘은 할당 문제(Assignment Problem)를 해결합니다:“n개의 작업을 n명의 작업자에게 어떻게 할당하면 총 비용이 최소화되거나 총 이익이 최대화될까?”이 문제는 다음과 같이 생각할 수 있습니다:작업을 직원에게 최적 할당예측 박스와 실제 GT 박스 매칭학생과 학교의 최적 매칭DETR (End-to-End Object Detection with Transformers.. 2025. 4. 22.
Heap 구조 설명 및 파이썬 예제 힙(Heap)은 이진 트리 기반의 자료구조로, 힙 속성(Heap Property)을 만족합니다:- 최소 힙(Min-Heap): 모든 부모 노드는 자식 노드보다 작거나 같습니다.- 최대 힙(Max-Heap): 모든 부모 노드는 자식 노드보다 크거나 같습니다.** 힙은 정렬된 구조는 아니지만, 가장 작은 값(또는 가장 큰 값)이 항상 루트(최상단)에 위치한다는 것을 보장합니다. 1. 최소 힙 예제다음 입력이 주어지면: [5, 3, 8, 1, 2]최소힘은 다음과 같은 이진 트리로 입력 갑을 변환함:그리고 새롭게 저장된 배열은 다음과 같음: [1, 2, 8, 5, 3]각 노드의 인덱스 i에 대해서:왼쪽 자식 노드 = 인덱스 2i + 1오른쪽 자식 노드 = 인덱스 2i + 2 2. 실제 힙 구조가 사용되는 경우들.. 2025. 4. 19.
Dijkstra 알고리즘 설명 Dijkstra 알고리즘은 가중치가 있는 그래프(모든 가중치가 0 이상)에서 출발 노드로부터 다른 모든 노드까지의 최단 경로를 찾는 알고리즘입니다. 1956년 네덜란드의 컴퓨터 과학자 Edsger W. Dijkstra가 고안하였으며, 오늘날까지도 다양한 분야에서 널리 활용되고 있는 대표적인 그래프 탐색 알고리즘입니다.이 알고리즘은 최단 경로 문제 중에서도 단일 출발점 최단 경로 문제 (Single-Source Shortest Path, SSSP)를 해결하는 데 사용되며, 다익스트라 알고리즘은 BFS와 달리 가중치 정보를 고려하므로 더 정교하고 현실적인 상황에 적합합니다.일반적으로 다음과 같은 분야에서 흔히 사용됩니다:GPS 내비게이션Network 라우팅게임 AI 경로 탐색로보틱스 및 자율주행 시스템지도 .. 2025. 4. 19.