What-is-heap.md
Last updated
Last updated
์์ ์ด์ง ํธ๋ฆฌ์ ์ผ์ข ์ผ๋ก ์ฐ์ ์์ ํ๋ฅผ ์ํ์ฌ ๋ง๋ค์ด์ง ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์ฌ๋ฌ๊ฐ์ ๊ฐ๋ค ์ค์์ ์ต๋๊ฐ์ด๋ ์ต์๊ฐ์ ๋น ๋ฅด๊ฒ ์ฐพ์๋ด๋๋ก ๋ง๋ค์ด์ง ์๋ฃ๊ตฌ์กฐ์ด๋ค.
์ข ๋ฅ
์ต๋ ํ(Max Heap) ๋ถ๋ชจ ๋ ธ๋์ ํค ๊ฐ์ด ์์๋ ธ๋์ ํค๊ฐ๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ์์ ์ด์ง ํธ๋ฆฌ
์ต์ ํ(Min Heap) ๋ถ๋ชจ ๋ ธ๋์ ํค ๊ฐ์ด ์์ ๋ ธ๋์ ํค ๊ฐ๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ ์ด์ง ํธ๋ฆฌ
ํ์์์ ๋ถ๋ชจ๋ ธ๋์ ์์ ๋ ธ๋์ ๊ด๊ณ
์ผ์ชฝ ์์์ ์ธ๋ฑ์ค = ๋ถ๋ชจ ์ธ๋ฑ์ค * 2
์ค๋ฅธ์ชฝ ์์์ ์ธ๋ฑ์ค = ๋ถ๋ชจ ์ธ๋ฑ์ค * 2 + 1
๋ถ๋ชจ ์ธ๋ฑ์ค = ์์ ์ธ๋ฑ์ค / 2
Python์์๋ heapq ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํตํด ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ค