Saturday, July 4, 2009

Queue

Queue (แถว) เป็นโคงสร้างข้อมูลแบบ linear list ซึ่งข้อมูลจะถูกเพิ่มเข้าทางด้านท้ายของแถว (เรียกว่า rear) และจะลบข้อมูลออกจากด้านหัวแถว (เรียกว่า front) มีชื่อเรียกเรีกกระบวนการนี้ว่า first in – first out (FIFO)

1. Queue Operations
Queue มีคำสังพื้นฐานอยู่ 2 คำสั่งคือ

  • ใส่ข้อมูลลงใน queue ทางด้านท้ายแถว (enqueue)
  • ลบข้อมูลออกจาก queue ทางด้านหัวแถว (dequeue)

Enqueue
เป็นคำสั่งใส่ข้อมูลลงใน queue หลังจากใส่ข้อมูลลงใน queue แล้วข้อมูลตัวใหม่นี้จะไปอยู่ท้ายแถว (rear) ถ้าไม่มีที่สำหรับข้อมูลใหม่แล้วจะเรียกว่า queue อยู่ในสถานะ overflow

Enqueue inserts an element at the rear of the queue.

Dequeue
เป็นคำสั่งลบข้อมูลออกจาก queue โดยข้อมูลที่อยู่ด้านหัวแถวจะถูก return ไปยังผู้ใช้และถูกลบออกจาก queue

Dequeue deletes an element at the front of the queue.

2. Queue Implementation

2.1 Queue Array Implementation