Algorithm3 [Java] Graph (Adjacency Matrix, Adjacency List) ์ ์ (Vertex)๊ณผ ๊ฐ์ (Edge)๋ก ๊ตฌ์ฑ๋ ๊ฒ, Graph(G) = (Vertex(V), Edge(E)) Graph ์ฉ์ด ์ ์ (Vertex) - ๋ ธ๋, ํน์ ํ ์ ์๋ ์ค์ฒด๊ฐ์ (Edge) - ์ ์ ๊ฐ ์ด์ด์ ธ ์๋ ์ ๊ฐ์ค์น(Weight) - ์ ์ ๊ฐ์ ๊ฑฐ๋ฆฌ, ๋น์ฉ (๊ฐ์ ์ ๊ธธ์ด๋ผ๊ณ ์๊ฐํด๋ ์ข์)๊ฒฝ๋ก(Path) - ์ถ๋ฐ ์ ์ ์์ ๋์ฐฉ ์ ์ ๊น์ง์ ๊ฑฐ์ณ ๊ฐ ์์์ํ(Cycle) - ๊ฒฝ๋ก์ ์ถ๋ฐ ์ ์ ๊ณผ ๋์ฐฉ ์ ์ ์ด ๊ฐ์ ๊ฒฝ์ฐ์ฐจ์(Degree) - ์ ์ ์ ๋ถ์ ๊ฐ์ ์์ง์ ์ฐจ์(In-Degree) - ์ ์ ์ผ๋ก ๋ค์ด์ค๋ ๊ฐ์ ์์ง์ถ ์ฐจ์(Out-Degree) - ์ ์ ์์ ๋๊ฐ๋ ๊ฐ์ ์Graph ์ข ๋ฅ ์ ํฅ ๊ทธ๋ํ(Directed Graph) - ํน์ ์ ์ ์์ ํน์ ์ ์ ์ผ๋ก ์ด๋ํ๋ ๊ทธ๋ํ๋ฌดํฅ ๊ทธ๋ํ(UnDire.. 2024. 7. 9. ๋ฐฑ์ค - [BOJ 22856] ํธ๋ฆฌ ์ํ ๋ฌธ์ ๋ ธ๋๊ฐ N๊ฐ์ธ ์ด์ง ํธ๋ฆฌ๊ฐ ์๋ค. ํธ๋ฆฌ๋ฅผ ์ค์ ์ํ์ ์ ์ฌํ๊ฒ ์ํํ๋ ค๊ณ ํ๋ค. ์ด๋ฅผ ์ ์ฌ ์ค์ ์ํ๋ผ๊ณ ํ์.์ํ์ ์์์ ํธ๋ฆฌ์ ๋ฃจํธ์ด๊ณ ์ํ์ ๋์ ์ค์ ์ํํ ๋ ๋ง์ง๋ง ๋ ธ๋์ด๋ค. ์ด๋ ๋ฃจํธ ๋ ธ๋๋ ํญ์ 1๋ฒ ๋ ธ๋์ด๋ค.์ ์ฌ ์ค์ ์ํ๋ ๋ฃจํธ ๋ ธ๋์์ ์์ํ๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ด ์งํ๋๋ค.ํ์ฌ ์์นํ ๋ ธ๋์ ์ผ์ชฝ ์์ ๋ ธ๋๊ฐ ์กด์ฌํ๊ณ ์์ง ๋ฐฉ๋ฌธํ์ง ์์๋ค๋ฉด, ์ผ์ชฝ ์์ ๋ ธ๋๋ก ์ด๋ํ๋ค.๊ทธ๋ ์ง ์๊ณ ํ์ฌ ์์นํ ๋ ธ๋์ ์ค๋ฅธ์ชฝ ์์ ๋ ธ๋๊ฐ ์กด์ฌํ๊ณ ์์ง ๋ฐฉ๋ฌธํ์ง ์์๋ค๋ฉด, ์ค๋ฅธ์ชฝ ์์ ๋ ธ๋๋ก ์ด๋ํ๋ค.๊ทธ๋ ์ง ์๊ณ ํ์ฌ ๋ ธ๋๊ฐ ์ ์ฌ ์ค์ ์ํ์ ๋์ด๋ผ๋ฉด, ์ ์ฌ ์ค์ ์ํ๋ฅผ ์ข ๋ฃํ๋ค.๊ทธ๋ ์ง ์๊ณ ๋ถ๋ชจ ๋ ธ๋๊ฐ ์กด์ฌํ๋ค๋ฉด, ๋ถ๋ชจ ๋ ธ๋๋ก ์ด๋ํ๋ค.์ ์ฌ ์ค์ ์ํ๋ฅผ ์ข ๋ฃํ ๋๊น์ง 1 ~ 4๋ฅผ ๋ฐ๋ณตํ๋ค.์ ๊ทธ๋ฆผ์ ์.. 2024. 7. 8. [์ต๋จ๊ฒฝ๋ก] Bellman-Ford Algorithm ์ต๋จ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆpackage com.study.datastructrue.mst;import java.util.ArrayList;import java.util.Arrays;class Pair { T node; V cost; public Pair(T node, V cost) { this.node = node; this.cost = cost; }}public class BellmanFord { static long[] dist = new long[6]; public static void main(String[] args) { // ์ง 1, ํ๊ต 2, ๋ฐ๋ฌผ๊ด 3, ์ํ๊ด 4, ๋งํธ 5 ArrayList>> graph = inpu.. 2024. 7. 6. ์ด์ 1 ๋ค์