Java Bài 10.16: Hàng đợi


Submit solution

Points: 10 (partial)
Time limit: 1.0s
Memory limit: 125M

Author:
Problem type
Allowed languages
Java

Xây dựng lớp MyQueue.

  • Các thuộc tính cần có trong lớp MyQueue:

    • \(element:\) Object[] - mảng chứa các phần tử của hàng đợi.
    • \(size:\) int - số phần tử trong hàng đợi.
    • \(capacity:\) int - dung lượng của hàng đợi. Nếu số phần tử trong hàng đợi vượt quá dung lượng, không thể thêm phần tử mới vào hàng đợi. Ở bài toán này, mặc định capacity = 5.
    • \(front:\) int - chỉ số của phần tử ở đầu hàng đợi.
  • Các phương thức cần có trong lớp MyQueue:

    • Phương thức \(enqueue(int o):\) thêm một phần tử vào hàng đợi.
    • Phương thức \(dequeue():\) xóa một phần tử khỏi hàng đợi và trả về phần tử đó.
    • Phương thức \(isEmpty():\) kiểm tra hàng đợi có rỗng không.
    • Phương thức \(getSize():\) trả về số phần tử trong hàng đợi.
    • Phương thức \(getFront():\) trả về phần tử ở đầu hàng đợi nhưng không xóa nó.
  • Lưu ý kiểm tra các logic như xóa phần tử khỏi hàng đợi khi hàng đợi rỗng, thêm phần tử vào hàng đợi khi hàng đợi đã đầy, ...

INPUT FORMAT

  • Gồm nhiều dòng, kết thúc bằng dòng chứa số -1.
  • Mỗi dòng chứa một trong các lệnh sau:
    • \(enqueue x\): thêm phần tử x vào hàng đợi.
    • \(dequeue\): xóa phần tử ở đầu hàng đợi.
    • \(isEmpty\): kiểm tra hàng đợi có rỗng không.
    • \(getSize\): trả về số phần tử trong hàng đợi.
    • \(getFront\): trả về phần tử ở đầu hàng đợi nhưng không xóa nó.

OUTPUT FORMAT

  • Với mỗi lệnh isEmpty, getSize, getFront, in ra kết quả tương ứng trên một dòng.

Ví dụ:

Input
enqueue 1
enqueue 2
enqueue 3
dequeue
getSize
isEmpty
enqueue 4
getFront
-1
Output
2
false
2


Lời giải bài tập này: Tại đây

Group giải đáp thắc mắc: Lập trình 24h

Fanpage CLB: CLB lập trình Full House- Việt Nam

Youtube: CLB Lập Trình Full House


Comments

There are no comments at the moment.