Å¥ÀÇ Á¤ÀÇ "Å¥"´Â ¿©·¯ °³ÀÇ µ¥ÀÌŸ Ç׸ñµéÀÌ ÀÏÁ¤ÇÑ ¼ø¼·Î ³ª¿µÈ ÀÚ·á ±¸Á¶ÀÌ´Ù. ½ºÅðú´Â ´Þ¸® ÇÑÂÊ ³¡¿¡¼´Â »ðÀÔ¸¸ ÇÒ ¼ö ÀÖ°í, »èÁ¦´Â ¹Ý´ëÂÊ ³¡¿¡¼¸¸ ÇÒ ¼ö ÀÖµµ·Ï µÇ¾î ÀÖ´Ù.
Å¥ÀÇ ¿ø¸® Å¥´Â ¸ÅÇ¥¼Ò¿¡¼ Ç¥¸¦ »ç±â À§ÇØ ±â´Ù¸®´Â ´ë±âÀÚ ¿°ú °°Àº ¿ø¸®¸¦ °¡Áø´Ù. ´ë±âÀÚ ¿¿¡´Â ¸ÕÀú ¿Â »ç¶÷ºÎÅÍ Â÷·Ê·Î ´ë±âÀÚµéÀÌ ´Ã¾î¼ ÀÖ´Ù. ¾ÕÂÊ ³¡¿¡¼´Â ±â´Ù¸®´ø »ç¶÷ÀÌ Ç¥¸¦ »ç¼ ºüÁ®³ª°¡°í (»èÁ¦), µÚÂÊ ³¡¿¡¼´Â »õ·Î¿î »ç¶÷µéÀÌ ´ë±âÀÚ ¿·Î µé¾î¿Â´Ù(»ðÀÔ).
Å¥ÀÇ ¼ºÁú Å¥¿¡ ÀúÀåµÈ µ¥ÀÌŸ Ç׸ñµé Áß¿¡ ¸ÕÀú »ðÀÔµÈ °ÍÀº ¸ÕÀú »èÁ¦µÇ°í, ³ªÁß¿¡ »ðÀÔµÈ °ÍÀº ³ªÁß¿¡ »èÁ¦µÈ´Ù. ±×·¡¼ Å¥¸¦ ¼±ÀÔ ¼±Ãâ ¸®½ºÆ® (First-In-First-Out:FIFO) ¶ó ºÎ¸¥´Ù. ÈÄÀÔ ¼±Ãâ¹ýÀ» »ç¿ëÇÏ´Â ½ºÅà °ú´Â »ó¹ÝµÈ ¼ºÁúÀ» °¡Áø´Ù.
Å¥ÀÇ Á¾·ù
¼±Çü Å¥(linear queue)
ȯÇü Å¥(circular
queue)
Å¥¿¡´Â ÇÑ ¹æÇâÀ¸·Î µ¥ÀÌŸ Ç׸ñµéÀÌ »ðÀÔ/»èÁ¦µÇ´Â ¼±Çü Å¥¿Í ½ÃÀÛÁ¡°ú ³¡Á¡ÀÌ ¼·Î ¿¬°áµÇ¾î Àִ ȯÇü Å¥°¡ ÀÖ´Ù.
¼±Çü Å¥
¼±Çü Å¥ÀÇ ±¸Á¶

Å¥´Â ¿©·¯ °³ÀÇ µ¥ÀÌŸ Ç׸ñµéÀÌ ÇÏÇѺÎÅÍ Â÷·Ê·Î ÀúÀåµÇ´Â ¸ð¾çÀ» °¡Áø´Ù. »õ·Î¿î µ¥ÀÌŸ Ç׸ñÀÇ »ðÀÔÀº rear¿¡¼ ÀϾ°í, ÀÌ À§Ä¡´Â rear Æ÷ÀÎÅͶó´Â Áö½ÃÀÚ°¡ °¡¸®Å²´Ù. µ¥ÀÌŸ Ç׸ñÀÇ »èÁ¦´Â front¿¡¼ ÀϾ¸ç, ÀÌ À§Ä¡´Â front Æ÷ÀÎÅͶó´Â Áö½ÃÀÚ°¡ °¡¸®Å²´Ù.
front Æ÷ÀÎÅÍ¿Í rear Æ÷ÀÎÅÍ´Â Ãʱ⿡ ÇÏÇÑ¿¡¼ ½ÃÀÛÇÏ¿© »ðÀÔ°ú »èÁ¦°¡ ¹Ýº¹µÊ¿¡ µû¶ó »óÇÑÂÊÀ¸·Î À̵¿ÇÑ´Ù.
¼±Çü Å¥ÀÇ µ¿ÀÛ
¼±Çü Å¥¿¡ µ¥ÀÌŸ Ç׸ñ
»ðÀÔ µ¥ÀÌŸ Ç׸ñÀ» »ðÀÔÇÏ·Á¸é Å¥ÀÇ rear Æ÷ÀÎÅ͸¦ Çϳª¸¸Å Áõ°¡½ÃÄÑ ÁÖ°í ±× À§Ä¡¿¡ µ¥ÀÌŸ Ç׸ñÀ» ÀúÀåÇÑ´Ù.
<»ðÀÔÀü>

<»ðÀÔÈÄ>

½ÇÁ¦ Å¥´Â ¿ë·®ÀÌ Á¦ÇѵǾî ÀÖÀ¸¹Ç·Î µ¥ÀÌŸ Ç׸ñÀ» »ðÀÔÇϱâ Àü¿¡ ¿©À¯ °ø°£ÀÌ ÀÖ´ÂÁö °Ë»çÇØ¾ß ÇÑ´Ù.
¼±Çü Å¥¿¡¼ full °Ë»ç
»ðÀÔÀÌ °è¼ÓµÇ¾î rear Æ÷ÀÎÅͰ¡ »óÇÑ¿¡ µµ´ÞÇÏ¸é ´õÀÌ»ó »ðÀÔÀÌ ºÒ°¡´ÉÇÑ »óŰ¡ µÈ´Ù.


ÀÌ·± ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ È¯Çü Å¥¸¦ ÀÌ¿ëÇÑ´Ù.
¼±Çü Å¥¿¡¼ µ¥ÀÌŸ Ç׸ñ
»èÁ¦ µ¥ÀÌŸ Ç׸ñÀ» »èÁ¦ÇÏ·Á¸é Å¥ÀÇ front Æ÷ÀÎÅ͸¦ Çϳª¸¸Å Áõ°¡½ÃŰ°í ±× À§Ä¡¿¡ ÀÖ´Â µ¥ÀÌŸ Ç׸ñÀ» »èÁ¦ÇÑ´Ù.
<»èÁ¦Àü>

<»èÁ¦ÈÄ>

µ¥ÀÌŸ Ç׸ñÀ» »èÁ¦Çϱâ Àü¿¡ Å¥¿¡ »èÁ¦ÇÒ Ç׸ñÀÌ ³²¾ÆÀÖ´ÂÁö °Ë»çÇØ¾ß ÇÑ´Ù.
¼±Çü Å¥¿¡¼ empty °Ë»ç
ÀúÀåµÈ µ¥ÀÌŸ Ç׸ñµéÀÇ ¾ÕÂÊ ³¡À» °¡¸®Å°´Â front Æ÷ÀÎÅÍ´Â µÚÂÊ ³¡À» °¡¸®Å°´Â rear Æ÷ÀÎÅͺ¸´Ù Å« °ªÀ» °¡Áú ¼ö ¾ø´Ù. ¸¸¾à front Æ÷ÀÎÅÍ¿Í rear Æ÷ÀÎÅͰ¡ °°Àº °ªÀ» °¡Áø´Ù¸é Å¥¿¡ ÀúÀåµÈ µ¥ÀÌŸ°¡ ¾ø´Ù´Â ¶æÀÌ´Ù.

ȯÇü Å¥
ȯÇü Å¥ÀÇ ±¸Á¶
ȯÇü Å¥´Â ¼±Çü Å¥ÀÇ ¹®Á¦Á¡À» º¸¿ÏÇϱâ À§ÇØ ¸¸µé¾îÁø ÀڷᱸÁ¶ÀÌ´Ù. »ðÀÔ°ú »èÁ¦ µ¿ÀÛÀº ¼±Çü Å¥¿Í °°Áö¸¸, Å¥ÀÇ »óÇѰú ÇÏÇÑÀÌ ¼·Î ¿¬°áµÈ °í¸® ¸ð¾çÀ» Çϰí ÀÖ¾î, »ç½Ç»ó Å¥ÀÇ ÇѰ谡 ¾ø´Â °Í°ú °°´Ù.

¼±Çü Å¥¿¡¼¿Í ¸¶Âù°¡Áö·Î »ðÀÔ À§Ä¡¸¦ °¡¸®Å°´Â rear Æ÷ÀÎÅÍ¿Í »èÁ¦ À§Ä¡¸¦ °¡¸®Å°´Â front Æ÷ÀÎÅͰ¡ ÀÖ´Ù. µÎ°³ÀÇ Æ÷ÀÎÅÍ´Â Ãʱ⿡ ½ÃÀÛÁ¡¿¡¼ Ãâ¹ßÇÏ¿© »ðÀÔ°ú »èÁ¦°¡ ÀϾ¿¡ µû¶ó ±× °ªÀÌ Çϳª¾¿ Áõ°¡ÇÏ¿© ½Ã°è ¹æÇâÀ¸·Î À̵¿ÇÑ´Ù. Æ÷ÀÎÅͰ¡ Å¥ÀÇ ³¡Á¡¿¡ ÀÖÀ» ¶§ »ðÀÔÀ̳ª »èÁ¦°¡ ÀϾ¸é Æ÷ÀÎÅͰ¡ reset µÇ¾î ´Ù½Ã ½ÃÀÛÁ¡À» °¡¸®Å²´Ù.
ȯÇü Å¥ÀÇ µ¿ÀÛ
ȯÇü Å¥¿¡ µ¥ÀÌŸ Ç׸ñ
»ðÀÔ µ¥ÀÌŸ Ç׸ñÀ» »ðÀÔÇÏ·Á¸é Å¥ÀÇ rear Æ÷ÀÎÅ͸¦ Çϳª¸¸Å Áõ°¡½ÃÄÑ ÁÖ°í ±× ÀÚ¸®¿¡ µ¥ÀÌŸ Ç׸ñÀ» ÀúÀåÇÑ´Ù. ¸¸¾à rear Æ÷ÀÎÅͰ¡ ³¡Á¡À» °¡¸®Å°°í ÀÖÀ¸¸é reset ½ÃÄÑ ÁØ´Ù.




µ¥ÀÌŸ »ðÀԽÿ¡ Å¥ÀÇ ¿ë·®À» ÃʰúÇÏ¿© »ðÀÔÇÒ ¼ö ¾øÀ¸¹Ç·Î »ðÀÔ Àü¿¡ Å¥°¡ °¡µæÂ÷ ÀÖ´ÂÁö °Ë»çÇØ¾ß ÇÑ´Ù.
ȯÇü Å¥¿¡¼ full °Ë»ç
ȯÇü Å¥¸¦ ÀÌ¿ëÇϸé rear Æ÷ÀÎÅͰ¡ »óÇÑ¿¡ µµ´ÞÇÏ¿© »ðÀÔÀÌ ÁߴܵǴ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö´Â ÀÖÁö¸¸ Å¥ÀÇ ¿ë·®À» ÃʰúÇÏ¿© µ¥ÀÌŸ Ç׸ñÀ» »ðÀÔÇÒ ¼ö´Â ¾ø´Ù. ´ÙÀ½ ±×¸²¿¡¼Ã³·³ front Æ÷ÀÎÅÍ¿Í rear Æ÷ÀÎÅͰ¡ °°Àº °÷À» °¡¸®Å°¸é Å¥°¡ °¡µæÂù °ÍÀÌ´Ù.

ÀÌ·¸°Ô µÇ¸é Å¥°¡ °¡µæÂù °æ¿ì¿Í Å¥°¡ ºñ¾î ÀÖ´Â °æ¿ì ¸ðµÎ front ¿Í rear Æ÷ÀÎÅͰ¡ °°¾ÆÁö¹Ç·Î µÎ °¡Áö °æ¿ì¸¦ ±¸º°ÇÏ´Â ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù.
ȯÇü Å¥¿¡¼ µ¥ÀÌŸ Ç׸ñ
»èÁ¦ µ¥ÀÌŸ Ç׸ñÀ» »èÁ¦ÇÏ·Á¸é front Æ÷ÀÎÅ͸¦ Çϳª¸¸Å Áõ°¡½Ã۰í, ±× À§Ä¡¿¡ ÀÖ´Â µ¥ÀÌŸ Ç׸ñÀ» Á¦°ÅÇÑ´Ù. ¸¸¾à front Æ÷ÀÎÅͰ¡ ³¡Á¡À» °¡¸®Å°°í ÀÖÀ¸¸é reset ½ÃÄÑÁØ´Ù.




µ¥ÀÌŸ Ç׸ñÀ» »èÁ¦Çϱâ Àü¿¡ Å¥¿¡ ³²¾Æ ÀÖ´Â µ¥ÀÌŸ Ç׸ñÀÌ ÀÖ´ÂÁö °Ë»çÇØ¾ß ÇÑ´Ù.
ȯÇü Å¥¿¡¼ empty °Ë»ç
´ÙÀ½ÀÇ ±×¸²Ã³·³ front Æ÷ÀÎÅÍ¿Í rear Æ÷ÀÎÅͰ¡ °°Àº °÷À» °¡¸®Å°¸é Å¥°¡ ºñ¾îÀÖ´Â °ÍÀÌ´Ù.

ÀÌ·¸°Ô µÇ¸é Å¥°¡ °¡µæÂù °æ¿ì¿Í ºñ¾î ÀÖ´Â °æ¿ì ¸ðµÎ front ¿Í rear Æ÷ÀÎÅͰ¡ °°¾ÆÁö¹Ç·Î µÎ °¡Áö °æ¿ì¸¦ ±¸º°ÇÏ´Â ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù.
ȯÇü Å¥¿¡¼ Å¥°¡ °¡µæÂù
°æ¿ì¿Í Å¥°¡ ºñ¾îÀÖ´Â °æ¿ì¸¦ ±¸º°ÇÏ´Â ¹æ¹ýȯÇü Å¥¿¡¼ front Æ÷ÀÎÅÍ¿Í rear Æ÷ÀÎÅͰ¡ °°Àº °æ¿ì¸¦ Å¥ full °ú Å¥ empty Á¶°ÇÀ¸·Î »ç¿ëÇÏ¸é µÎ °¡Áö °æ¿ì¸¦ ±¸º°ÇÒ ¼ö ¾ø´Ù. À̰ÍÀ» ±¸º°Çϱâ À§ÇØ ÇϳªÀÇ ¿©À¯ °ø°£À» µÎ°í ±× °ø°£Àº »ç¿ëÇÏÁö ¸øÇϵµ·Ï ÇÑ´Ù.

front pointer = rear
pointer

front pointer = rear
pointer+1