Heap

heap

  • ์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ์ž๋ฃŒ๊ตฌ์กฐ

    • ์„ ์ž…์„ ์ถœํ•˜๋Š” ์ผ๋ฐ˜ ํ์™€ ๋‹ค๋ฅด๊ฒŒ, ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ์‹œ์Šคํ…œ

  • ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ์˜ ์ผ์ข…

  • ์—ฌ๋Ÿฌ ๊ฐ’ ์ค‘, ์ตœ๋Œ€๊ฐ’๊ณผ ์ตœ์†Œ๊ฐ’์„ ๋น ๋ฅด๊ฒŒ ์ฐพ์•„๋‚ด๋„๋ก ๋งŒ๋“ค์–ด์ง„ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ๋ฐ˜์ •๋ ฌ ์ƒํƒœ์ด๋‹ค.

  • ์ค‘๋ณต๋œ ๊ฐ’์„ ํ—ˆ์šฉํ•œ๋‹ค. - ์ด์ง„ํŠธ๋ฆฌ๋Š” ์ค‘๋ณต๊ฐ’ ํ—ˆ์šฉ ์•ˆ๋จ

  • ์ตœ๋Œ€ ํž™

    • ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ํ‚ค ๊ฐ’์ด ์ž์‹  ๋…ธ๋“œ์˜ ํ‚ค ๊ฐ’๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์€ ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ

  • ์ตœ์†Œ ํž™

    • ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ํ‚ค ๊ฐ’์ด ์ž์‹ ๋…ธ๋“œ์˜ ํ‚ค ๊ฐ’๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ

  • ์˜ˆ์‹œ

    • ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์‹œ์Šคํ…œ

    • ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ œ์–ด

    • ์šด์˜์ฒด์ œ์—์„œ์˜ ์ž‘์—… ์Šค์ผ€์ค„๋ง

    • ์ˆ˜์น˜ ํ•ด์„์ ์ธ ๊ณ„์‚ฐ

  • ์žฅ์ 

    • ์ตœ๋Œ€๊ฐ’๊ณผ ์ตœ์†Œ๊ฐ’์„ ์ฐพ์•„๋‚ผ ๋•Œ์—๋„ ์‹œ๊ฐ„๋ณต์žก๋„ O(1) ๋กœ ๊ฐ€๋Šฅํ•˜๋‹ค.

    • ์‚ฝ์ž…๊ณผ ์‚ญ์ œ ์—ฐ์‚ฐ ์‹œ์—๋„ ํŠธ๋ฆฌ์˜ ๊นŠ์ด๋งŒํผ๋งŒ ํƒ์ƒ‰ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ O(logN) ์œผ๋กœ ๋งค์šฐ ๋น ๋ฅด๋‹ค.

  • ๊ตฌํ˜„

    • ์šฐ์„ ์ˆœ์œ„ ํ๋Š” ๋ฐฐ์—ด, ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ, ํž™์œผ๋กœ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ทธ์ค‘์—์„œ๋„ ํž™์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ํšจ์œจ์ ์ด๋‹ค.

    • ํž™์„ ์ €์žฅํ•˜๋Š” ํ‘œ์ค€์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๋ฐฐ์—ด

    • ๊ตฌํ˜„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ฒซ ์ธ๋ฑ์Šค์ธ 0์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

    • ๊ฐ ๋…ธ๋“œ์™€ ๋Œ€์‘๋˜๋Š” ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šคํ‹‘ ๋ถˆ๋ณ€ํ•œ๋‹ค.

    • "๋ถ€๋ชจ ๋…ธ๋“œ๋Š” ํ•ญ์ƒ ์ž์‹ ๋…ธ๋“œ๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค" ๋Š” ์กฐ๊ฑด์„ ๊ธฐ์–ตํ•˜๋ฉฐ ์™„์ „์ด์ง„ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ์ฑ„์›Œ๋‚˜๊ฐ„๋‹ค.

์ตœ์†Œํž™, ์ตœ๋Œ€ํž™

  • ๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ธฐ์–ตํ•˜๊ธฐ

    • "๋ถ€๋ชจ ๋…ธ๋“œ๋Š” ํ•ญ์ƒ ์ž์‹ ๋…ธ๋“œ๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค" ๋Š” ์กฐ๊ฑด์„ ๊ธฐ์–ตํ•˜๋ฉฐ ์™„์ „์ด์ง„ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ์ฑ„์›Œ๋‚˜๊ฐ„๋‹ค.

    • ๊ฐ ๋…ธ๋“œ์™€ ๋Œ€์‘๋˜๋Š” ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” ๋ถˆ๋ณ€ํ•œ๋‹ค.

    • ๊ตฌํ˜„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ฒซ ์ธ๋ฑ์Šค์ธ 0์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

    • ํž™์„ ์ €์žฅํ•˜๋Š” ํ‘œ์ค€์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๋ฐฐ์—ด

  • ์„ฑ์งˆ

    • ์™ผ์ชฝ ์ž์‹ ์ธ๋ฑ์Šค = ๋ถ€๋ชจ ์ธ๋ฑ์Šค * 2

    • ์˜ค๋ฅธ์ชฝ ์ž์‹ ์ธ๋ฑ์Šค = ๋ถ€๋ชจ ์ธ๋ฑ์Šค * 2 + 1

    • ๋ถ€๋ชจ ์ธ๋ฑ์Šค = ์ž์‹ ์ธ๋ฑ์Šค / 2

์ฐธ๊ณ 

Last updated