🚧

큐 (Queue)

purpplee 2021. 11. 21. 21:28

νλž€?

νλŠ” λŒ€κΈ°μ€„μ΄λž€ λœ»μ΄λ‹€. λŒ€κΈ°μ€„μ²˜λŸΌ λ’€μ—μ„œ 데이터가 λ“€μ–΄μ˜€κ³  μ•žμ—μ„œ 데이터가 λ‚˜κ°€λŠ” ν˜•νƒœλ‹€. κ·Έλž˜μ„œ λ¨Όμ € λ“€μ–΄μ˜¨ 데이터가 λ¨Όμ € λ‚˜κ°€λŠ” FIFO(Firt in First Out) 의 νŠΉμ„±μ„ κ°€μ§„λ‹€.

 

큐의 μ—°μ‚°

νλŠ” μ•ž, λ’€ μ–‘μͺ½μ—μ„œ λ°μ΄ν„°μ˜ μž…μΆœλ ₯이 이루어진닀. 보톡 데이터가 좜λ ₯λ˜λŠ” μ•žμͺ½μ„ front, 데이터가 μž…λ ₯λ˜λŠ” λ’€μͺ½μ„ rear 라고 ν•œλ‹€.

 

READ - peek

맨 μ•ž(front)의 데이터λ₯Ό μ½λŠ”λ‹€. front μ •λ³΄λ§Œ μ²΄ν¬ν•˜λ©΄ λ˜λ―€λ‘œ O(1) 의 μ‹œκ°„λ³΅μž‘λ„λ₯Ό κ°€μ§„λ‹€.

 

INSERT - enqueue

맨 λ’€(rear)에 데이터λ₯Ό μΆ”κ°€ν•œλ‹€. rear μ •λ³΄λ§Œ μ²΄ν¬ν•˜λ©΄ λ˜λ―€λ‘œ O(1) μ˜ μ‹œκ°„λ³΅μž‘λ„λ₯Ό κ°€μ§„λ‹€.

 

DELETE - dequeue

맨 μ•ž(front)의 데이터λ₯Ό μ‚­μ œν•œλ‹€. front μ •λ³΄λ§Œ μ²΄ν¬ν•˜λ©΄ λ˜λ―€λ‘œ O(1) μ˜ μ‹œκ°„λ³΅μž‘λ„λ₯Ό κ°€μ§„λ‹€.

 

SEARCH

큐λ₯Ό κ΅¬ν˜„ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” μžλ£Œκ΅¬μ‘°μ™€ μ•Œκ³ λ¦¬μ¦˜μ— 따라 λ‹€λ₯΄λ‹€.

λ°˜μ‘ν˜•