๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กqueue ์ž๋ฃŒ๊ตฌ์กฐ (1)

Hey Tech

ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ ์ดํ•ด(+ Python)

๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๐Ÿ“š ๋ชฉ์ฐจ 1. ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ๋ž€? 2. ํ ๋™์ž‘ ์˜ˆ์‹œ 3. ํ ๊ตฌํ˜„(Python) 1. ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ๋ž€? ํ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ์„ ์ž…์„ ์ถœ(ๅ…ˆๅ…ฅๅ…ˆๅ‡บ, First In First Out, ์ค„์—ฌ์„œ FIFO) ๊ตฌ์กฐ๋กœ ํ”ํžˆ ๋†€์ด๊ณต์› ๋‚ด ๋†€์ด๊ธฐ๊ตฌ ๋Œ€๊ธฐ์ค„์— ๋น„์œ ํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 1 ์ฐธ๊ณ ). ์ฆ‰, ๋†€์ด๊ธฐ๊ตฌ ๋Œ€๊ธฐ์ค„์— ๋จผ์ € ์„  ์‚ฌ๋žŒ(๋ฐ์ดํ„ฐ ์ž…๋ ฅ)์ด ๋จผ์ € ๋†€์ด๊ธฐ๊ตฌ๋ฅผ ํƒ€๋Š”(๋ฐ์ดํ„ฐ ์ถœ๋ ฅ/์ œ๊ฑฐ) ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค(๋‹จ, ์ƒˆ์น˜๊ธฐ๋Š” ์—†๋‹ค๊ณ  ๊ฐ€์ •). ํ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ์•„๋ž˜ 2๊ฐ€์ง€ ํ•ต์‹ฌ์ ์ธ ํ•จ์ˆ˜๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์‚ฝ์ž…(append) ๋ฐ์ดํ„ฐ ์‚ญ์ œ(popleft) ํ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ(Overflow)์™€ ์–ธ๋”ํ”Œ๋กœ์šฐ(Underflow)๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ์œ ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค..