๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Data structure3

[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.
[Java] Binary Search Tree ์•ž ํฌ์ŠคํŒ…์—์„œ ์ž‘์„ฑํ•œ Tree์˜ ๋น„ํšจ์œจ์ ์ธ ๋ฌธ์ œ๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๊ธด ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ๋‹ค.ํŠธ๋ฆฌ๋Š” ์—ฌ๋Ÿฌ ์ž์‹์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์ง€๋งŒ ์ด์ง„ ๊ฒ€์ƒ‰ ํŠธ๋ฆฌ์—์„œ๋Š” Binary Tree์˜ ๊ฐœ๋…์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์—์ž์‹์ด Left, Right๋งŒ ์กด์žฌํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด Log_2 (N) ๋ฒˆ๋งŒ์— ๋ชจ๋“  ์ˆ˜ํ–‰์„ ๋๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋˜, inorder๋ฅผ ์ˆ˜ํ–‰ ์‹œ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ๋œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. package com.study.datastructrue.nonlinear.binarysearchtree;public class Node { int value; Node left; Node right; public Node(int value) { this.value = value; left = null;.. 2024. 7. 8.
[Java] Tree ํŠธ๋ฆฌ ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ข…๋ฅ˜ : Tree, Binary Tree, Binary Serach Tree, Balanced Binary Serach Tree, Heap, Trie์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ๊ธฐ๋ณธ์ ์ธ Tree์— ๋Œ€ํ•ด์„œ๋งŒ ์ž‘์„ฑํ•ด๋ณด์ž. Tree๋ž€ ? Node์™€ Edge๋กœ ๊ตฌ์„ฑ๋œ ๋ฐฉํ–ฅ์ด ์กด์žฌํ•˜๋Š” ๋น„์ˆœํ™˜ Graph์˜ ํ•œ ์ข…๋ฅ˜์ด๋‹ค. ๊ทธ๋ž˜์„œ DAG(Directed Acyclic Graphs)๋ผ๊ณ ๋„ ํ•œ๋‹ค.๊ทธ๋Ÿผ Graph๋กœ ๋ถ„๋ฅ˜ํ•˜๋ฉด ๋˜์ง€ ์™œ Tree๋ƒ๋Š” ์˜์‹ฌ์„ ํ•˜๊ฒŒ ๋œ๋‹ค.Tree๋Š” Graph์—์„œ ๋ช‡๊ฐ€์ง€ ํŠน์„ฑ์„ ๋” ๊ฐ€์ง„๋‹ค. 1. ๋ฃจํŠธ ๋…ธ๋“œ๊ฐ€ ํ•˜๋‚˜ ์กด์žฌํ•œ๋‹ค.2. ๋ถ€๋ชจ ๋…ธ๋“œ๋Š” ํ•˜๋‚˜๋ฐ–์— ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค.3. ๋…ธ๋“œ๋Š” 0๊ฐœ ์ด์ƒ์˜ ์ž์‹์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.4. ์ž์‹์ด 0๊ฐœ์ธ ๊ฒฝ์šฐ ๋‹จ๋ง๋…ธ๋“œ(Leaf Node)๋ผ๊ณ  ํ•œ๋‹ค.5.. ์œ„ ํŠน์„ฑ์„ ์ง€ํ‚ค๋Š” .. 2024. 7. 7.