ํ์ ์ ์
- ์ปดํจํฐ์ ๊ธฐ๋ณธ์ ์ธ ์๋ฃ ๊ตฌ์กฐ์ ํ๊ฐ์ง, Python์ insert(0, ๊ฐ)์ pop(0)๋ก ๊ตฌํํ ์ ์์ผ๋ฉฐ, Javascript๋ unshift์ shift๋ก ๊ตฌํํ ์ ์์.
- ๋จผ์ ์ง์ด ๋ฃ์ ๋ฐ์ดํฐ๊ฐ ๋จผ์ ๋์ค๋ ์ ์ ์ ์ถ(FIFO - Frist In First Out)๊ตฌ์กฐ๋ก ์ ์ฅํ๋ ํ์
- ํ๋ฆฐํฐ์ ์ถ๋ ฅ ์ฒ๋ฆฌ๋ ์๋์ฐ ์์คํ ์ ๋ฉ์์ง ์ฒ๋ฆฌ๊ธฐ, ํ๋ก์ธ์ค ๊ด๋ฆฌ ๋ฑ ๋ฐ์ดํฐ๊ฐ ์ ๋ ฅ๋ ์๊ฐ ์์๋๋ก ์ฒ๋ฆฌํด์ผ ํ ํ์๊ฐ ์๋ ์ํฉ์ ์ด์ฉ
ํ์ ์ฉ์ด
- put : ํ์ ์๋ฃ๋ฅผ ๋ฃ๋ ๊ฒ
- get : ํ์์ ์๋ฃ๋ฅผ ๊บผ๋ด๋ ๊ฒ
- front : ๋ฐ์ดํฐ๋ฅผ getํ ์ ์๋ ์์น
- rear : ๋ฐ์ดํฐ๋ฅผ putํ ์ ์๋ ์์น
- Overflow : ํ๊ฐ ๊ฝ ์ฐจ์ ๋ ์ด์ ์๋ฃ๋ฅผ ๋ฃ์ ์ ์๋ ๊ฒฝ์ฐ
- Underflow : ํ๊ฐ ๋น์ด ์์ด ์๋ฃ๋ฅผ ๊บผ๋ผ ์ ์๋ ๊ฒฝ์ฐ
ํ์ ์ข ๋ฅ
1. ์ ํ ํ
- ๋ง๋ ๋ชจ์์ผ๋ก ๋ ํ
- ํฌ๊ธฐ๊ฐ ์ ํ๋์ด ์๊ณ ๋น ๊ณต๊ฐ์ ์ฌ์ฉํ๋ ค๋ฉด ๋ชจ๋ ์๋ฃ๋ฅผ ๊บผ๋ด๊ฑฐ๋ ์๋ฃ๋ฅผ ํ ์นธ์ฉ ์ฎ๊ฒจ์ผ
ํ๋ค๋ ๋จ์ ์ด ์์
- Data : A โ B โ C โ D
- insert
2. ํํ ํ
- ๋ฐฐ์ด๋ก ํ๋ฅผ ์ ์ธํ ์ ํ์ ์ญ์ ์ ์์ฑ์ด ๊ณ์ ์ผ์ด๋ฌ์๋, ๋ง์ง๋ง ๋ฐฐ์ด์ ๋๋ฌํ ์ค์ ๋ก๋ ๋ฐ์ดํฐ๊ณต๊ฐ์ด ๋จ์์์ง๋ง ์ค๋ฒํ๋ก์ฐ๊ฐ ๋ฐ์ํ๋ ์ ํ ํ์ ๋ฌธ์ ์ ์ ๋ณด์ํ ๊ฒ
- front(head)๊ฐ ํ์ ๋์ ๋ฟ์ผ๋ฉด ํ์ ๋งจ ์์ผ๋ก ์๋ฃ๋ฅผ ๋ณด๋ด์ด ์ํ์ผ๋ก ์ฐ๊ฒฐ
- Data : A โ B โ C โ D โ E
ย
์ถ์ฒ : https://ko.wikipedia.org/wiki/ํ_(์๋ฃ_๊ตฌ์กฐ) (์ํค๋ฐฑ๊ณผ)
ย