๋ชฉ๋กheapq (3)

๐ŸŒฑ → ๐ŸŒณ

[Python] ํž™ ์ž๋ฃŒ๊ตฌ์กฐ / ํž™ํ(heapq) / ํŒŒ์ด์ฌ์—์„œ heapq ๋ชจ๋“ˆ ์‚ฌ์šฉ

ํž™์€ ํŠน์ •ํ•œ ๊ทœ์น™์„ ๊ฐ€์ง€๋Š” ํŠธ๋ฆฌ๋กœ, ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์„ ์ฐพ๋Š” ์—ฐ์‚ฐ์„ ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆ๋œ ์™„์ „์ด์ง„ํŠธ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค. ํž™ property : A๊ฐ€ B์˜ ๋ถ€๋ชจ๋…ธ๋“œ์ด๋ฉด A์˜ ํ‚ค๊ฐ’๊ณผ B์˜ ํ‚ค๊ฐ’ ์‚ฌ์ด์—๋Š” ๋Œ€์†Œ ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•œ๋‹ค ์ตœ์†Œ ํž™: ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ํ‚ค๊ฐ’์ด ์ž์‹ ๋…ธ๋“œ์˜ ํ‚ค๊ฐ’๋ณด๋‹ค ํ•ญ์ƒ ์ž‘์€ ํž™ ์ตœ๋Œ€ ํž™: ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ํ‚ค๊ฐ’์ด ์ž์‹ ๋…ธ๋“œ์˜ ํ‚ค๊ฐ’๋ณด๋‹ค ํ•ญ์ƒ ํฐ ํž™ ์ด๋Ÿฌํ•œ ์†์„ฑ์œผ๋กœ ์ธํ•ด ํž™์—์„œ๋Š” ๊ฐ€์žฅ ๋‚ฎ์€(ํ˜น์€ ๋†’์€) ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๋Š” ๋…ธ๋“œ๊ฐ€ ํ•ญ์ƒ ๋ฃจํŠธ์— ์˜ค๊ฒŒ ๋˜๊ณ  ์ด๋ฅผ ์ด์šฉํ•ด ์šฐ์„ ์ˆœ์œ„ ํ์™€ ๊ฐ™์€ ์ถ”์ƒ์  ์ž๋ฃŒํ˜•์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ ํ‚ค๊ฐ’์˜ ๋Œ€์†Œ ๊ด€๊ณ„๋Š” ๋ถ€๋ชจ/์ž์‹ ๊ฐ„์—๋งŒ ์„ฑ๋ฆฝํ•˜๊ณ , ํ˜•์ œ๋…ธ๋“œ ์‚ฌ์ด์—๋Š” ๋Œ€์†Œ ๊ด€๊ณ„๊ฐ€ ์ •ํ•ด์ง€์ง€ ์•Š๋Š”๋‹ค. ํŒŒ์ด์ฌ ํž™ ์ž๋ฃŒ๊ตฌ์กฐ ํŒŒ์ด์ฌ heapq ๋ชจ๋“ˆ์€ heapq (priority queue) ์•Œ๊ณ ..

Algorithms 2023. 5. 30. 13:17