โ๏ธ ์ด๋ก /์๋ฃ๊ตฌ์กฐ, ์๊ณ ๋ฆฌ์ฆ
[์๋ฃ๊ตฌ์กฐ] ํธ๋ฆฌ(Tree) - ํธ๋ผ์ด ํธ๋ฆฌ(Trie tree)
์๋์ ์์๋ค์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ์ข์์์ ๊ฐ์ฌํฉ๋๋ค. Trie(ํธ๋ผ์ด) Tree์ ๋ํด์ - https://youtu.be/TohdsR58i3Q Trie - Insert and Search | GeeksforGeeks - https://youtu.be/dUBkaqrcYT8 0. ํธ๋ผ์ด ํธ๋ฆฌ(Trie tree)๋? (2023.03.16 ์์ ) ๋ฌธ์์ด ๊ฒ์์ ๋น ๋ฅด๊ฒ ํด์ฃผ๋ ์ด์ง ๊ฒ์ ํธ๋ฆฌ ๊ตฌ์กฐ. ํ ๋ ๋ฒจ๋น ํ ๋ฌธ์์ฉ ์ ์ฅ๋๋ฏ๋ก M์ด ๋ฌธ์์ด์ ์ต๋ ๊ธธ์ด๋ผ๋ฉด ๋ฌธ์์ด ๊ฒ์์ ์๊ฐ๋ณต์ก๋๋ O(Mlogn) ๋ค. ํธ๋ผ์ด๋ฅผ ์ด์ฉํ๋ฉด ์๊ฐ๋ณต์ก๋ O(M)์ด ๊ฑธ๋ฆฌ๋ ๋ฌธ์์ด ๊ฒ์๊ตฌ์กฐ๋ฅผ ๋ง๋ค ์ ์๋ค. ์ฐธ๊ณ -> https://ko.wikipedia.org/wiki/%ED%8A%B8%EB%9D%BC%EC%9D%B4_(%..
[์๋ฃ๊ตฌ์กฐ] ํธ๋ฆฌ(Tree) - ์ด์ง ํ(Binary Heaps)
์๋์ ์ ํฝ์์์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ์ข์์์ ๊ฐ์ฌํฉ๋๋ค. Binary Heaps (Min-Heaps and Max-Heaps) - https://youtu.be/jfwjyJvbbBI 0. ํ(Heaps)๋? ์ต๋๊ฐ์ด๋ ์ต์๊ฐ์ ์ฐพ์๋ด๋ ์ฐ์ฐ์ ๋น ๋ฅด๊ฒ ํ๊ธฐ ์ํ ์์ ์ด์ง ํธ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ํ ์๋ฃ๊ตฌ์กฐ. root์ ๊ฐ์ฅ ์์ ๊ฐ์ด ์ค๋ฉด ์ต์ ํ(min heap), root์ ๊ฐ์ฅ ํฐ ๊ฐ์ด ์ค๋ฉด ์ต๋ ํ(max heap) 1. ์ต์ ํ์ ๋ ธ๋ ์ฝ์ ํ๊ธฐ(Insert) 1. ์์ ๋ ธ๋์ ๋งจ ๋(leaf)์ ๋ ธ๋๋ฅผ ์ถ๊ฐํ๋, ์์ ์ด์ง ํธ๋ฆฌ(Complete binary tree)๋ฅผ ์ ์งํด์ผ ํ๋ฏ๋ก ๋ง์ง๋ง ๋ ๋ฒจ์ ์ผ์ชฝ๋ถํฐ ์ถ๊ฐ. 2. ๋ถ๋ชจ๋ ธ๋ > ์๋ ธ๋ ๋ผ๋ฉด ๋ถ๋ชจ์ ์๋ ธ๋์ ์๋ฆฌ๋ฅผ ๋ฐ๊ฟ. 3. ๋ถ๋ชจ๋ ธ๋ < ์..
[์๋ฃ๊ตฌ์กฐ] ํธ๋ฆฌ(Tree) - ํธ๋ฆฌ์ ์ข ๋ฅ, 3๊ฐ์ง ์ํ๋ฐฉ๋ฒ
์๋์ ์ ํฝ์์์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ์ข์์์ ๊ฐ์ฌํฉ๋๋ค. Tree์ ์ข ๋ฅ : https://youtu.be/LnxEBW29DOw 0. ํธ๋ฆฌ(tree)๋? ์ฆ Array, LinkedList, Stack, Queue๊ฐ์ด ์ ํ๊ตฌ์กฐ๊ฐ ์๋, ๋ถ๋ชจ์์์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๋ ๊ณ์ธตํ ๊ทธ๋ํ. 1. ์ด์ง ํธ๋ฆฌ(Binary tree) Binary tree : ๋ถ๋ชจ ๋ ธ๋๊ฐ ์์ ๋ ธ๋๋ฅผ ์ต๋ 2๊ฐ์ฉ๋ง ๊ฐ๊ณ ์๋ ํธ๋ฆฌ. Ternary tree : ์์ ๋ ธ๋๋ฅผ 2๊ฐ ์ด์ ๊ฐ๊ณ ์๋ ํธ๋ฆฌ 2. ์ด์ง ๊ฒ์ ํธ๋ฆฌ(Binary Search Tree) Binary tree : ๋ ธ๋๋ค๊ฐ์ ๋์๊ด๊ณ๋ ๊ณ ๋ คํ์ง ์๋๋ค. Binary search tree : left child์ ๊ทธ ์ดํ ๋ ธ๋๋ค์ ๋ฐ์ดํฐ๊ฐ ํ์ฌ ๋ ธ๋(๋ถ๋ชจ ๋ ธ๋)์ ๋ฐ์ดํฐ ๋ณด..