Java Bài 10.19: Ngăn xếp
Submit solution
Points:
10 (partial)
Time limit:
1.0s
Memory limit:
125M
Author:
Problem type
Allowed languages
Java
Xây dựng lớp MyStack.
Các thuộc tính cần có trong lớp MyStack:
- \(element\): Object[] - mảng chứa các phần tử của ngăn xếp.
- \(size\): int - số phần tử trong ngăn xếp.
- \(capacity\): int - dung lượng của ngăn xếp.
- \(top\): int - chỉ số của phần tử ở đỉnh ngăn xếp.
Các phương thức cần có trong lớp MyStack:
- Phương thức \(push(int o)\): thêm một phần tử vào ngăn xếp.
- Phương thức \(pop()\): xóa một phần tử khỏi ngăn xếp và trả về phần tử đó.
- Phương thức \(isEmpty()\): kiểm tra ngăn xếp có rỗng không.
- Phương thức \(getSize()\): trả về số phần tử trong ngăn xếp.
- Phương thức \(getFront()\): trả về phần tử ở đỉnh ngăn xếp nhưng không xóa nó.
Lưu ý kiểm tra các logic như xóa phần tử khỏi ngăn xếp khi ngăn xếp rỗng, thêm phần tử vào ngăn xếp khi ngăn xếp đã đầy, ...
INPUT FORMAT
- Dòng đầu tiên nhập số nguyên \(capacity\) (1 ≤ capacity ≤ 1000) - dung lượng của ngăn xếp.
- 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:
- \(push x\): thêm phần tử x vào ngăn xếp.
- \(pop\): xóa phần tử ở đầu ngăn xếp.
- \(isEmpty\): kiểm tra ngăn xếp có rỗng không.
- \(getSize\): trả về số phần tử trong ngăn xếp.
- \(getFront\): trả về phần tử ở đầu ngăn xếp 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
10
push 1
push 2
push 3
pop
getSize
isEmpty
push 4
getFront
Output
2
false
4
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