Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- greedy
- string
- Class
- implement
- database
- Matrix
- sorting
- Math
- two pointers
- Stack
- dynamic programming
- Counting
- 코딩테스트
- Tree
- Binary Search
- Binary Tree
- simulation
- array
- hash table
- 구현
- Data Structure
- Method
- java
- Number Theory
- geometry
- 자바
- bit manipulation
- SQL
- 코테
- 파이썬
Archives
- Today
- Total
목록Minimum spanning tree (1)
코린이의 소소한 공부노트
Kruskal algorithm
1. Problem - 크루스칼 알고리즘을 사용하여 모든 노드를 연결하는 최소 비용을 구해보자. - 최소 비용 신장 트리(minimum cost spanning tree)를 만드는 대표적인 알고리즘이다. - 각 노드를 연결하는 간선의 정보(연결된 노드, 비용)를 이용해 간선을 정렬한 후 사이클을 만들지 않게 적은 비용의 간선부터 차례대로 선택해 나간다. - 최소한의 비용으로 모든 노드를 이어야 하기 때문에, 사이클을 만드는 것은 비용 낭비가 된다. - 간선을 선택하기 전에 사이클 테이블을 확인해야 하는데, 이는 이미 연결된 노드인지 알아보기 위함이다. 사이클 테이블은 union-find(합집합 찾기) 알고리즘을 이용한다. 2. Input 1) int[][] graph - 연결된 노드를 표현 2) int[..
Back-End/Algorithm
2023. 6. 1. 11:49