NỘI DUNG BÀI VIẾT
Mục đích
Triển khai queue sử dụng mảng
Mô tả
Cài đặt lớp MyQueue như mô tả trong sơ đồ sau:
Phương thức enqueue để thêm một đối tượng vào queue và dequeue để xoá một đối tượng khỏi queue.
Xây dựng lớp QueueClient chứa phương thức main() để sử dụng lớp MyQueue.
Hướng dẫn nộp bài:
- Up mã nguồn lên github
- Paste link github vào phần nộp bài
Hướng dẫn
Bước 1: Tạo lớp MyQueue với các thuộc tính:
public class MyQueue { private int capacity; private int queueArr[]; private int head = 0; private int tail = -1; private int currentSize = 0; public MyQueue(int queueSize) { this.capacity = queueSize; queueArr = new int[this.capacity]; }}
Bước 2: Cài đặt phương thức isQueueFull ()
public boolean isQueueFull(){ boolean status = false; if (currentSize == capacity){ status = true; } return status; }
Bước 3: Cài đặt phương thức isQueueEmpty()
public boolean isQueueEmpty(){ boolean status = false; if (currentSize == 0){ status = true; } return status; }
Bước 4: Cài đặt phương thức enqueue ()
public void enqueue(int item) { if (isQueueFull()) { System.out.println("Overflow ! Unable to add element: " + item); } else { tail++; if (tail == capacity - 1) { tail = 0; } queueArr[tail] = item; currentSize++; System.out.println("Element " + item + " is pushed to Queue !"); }}
Bước 5: Cài đặt phương thức dequeue ()
public void dequeue() { if (isQueueEmpty()) { System.out.println("Underflow ! Unable to remove element from Queue"); } else { head++; if (head == capacity - 1) { System.out.println("Pop operation done ! removed: " + queueArr[head - 1]); head = 0; } else { System.out.println("Pop operation done ! removed: " + queueArr[head - 1]); } currentSize--; }}
Bước 6: Cài đặt lớp QueueClient chứa phương thức main để thực thi ứng dụng
public static void main(String[] args) { MyQueue queue = new MyQueue(4); queue.enqueue(4); queue.dequeue(); queue.enqueue(56); queue.enqueue(2); queue.enqueue(67); queue.dequeue(); queue.dequeue(); queue.enqueue(24); queue.dequeue(); queue.enqueue(98); queue.enqueue(45); queue.enqueue(23); queue.enqueue(435); }
Bước 7: Chạy chương trình. Quan sát kết quả trả về.