Khi cần triển khai một hàng đợi (queue) bằng Python, ta tạo một lớp queue và định nghĩa các phương thức thêm và xóa phần tử. Một thể hiện của lớp được tạo và các phương thức này được gọi thông qua thể hiện đó để hiển thị kết quả.
Ví dụ
class Queue_struct:
def __init__(self):
self.items = []
def check_empty(self):
return self.items == []
def enqueue_elem(self, data):
self.items.append(data)
def dequeue_elem(self):
return self.items.pop(0)
my_instance = Queue_struct()
while True:
print('Enqueue ')
print('Dequeue')
print('Quit')
my_input = input('Thao tác bạn muốn thực hiện? ').split()
operation = my_input[0].strip().lower()
if operation == 'enqueue':
my_instance.enqueue_elem(int(my_input[1]))
elif operation == 'dequeue':
if my_instance.check_empty():
print('Hàng đợi rỗng...')
else:
print('Giá trị đã xóa:', my_instance.dequeue_elem())
elif operation == 'quit':
break
Kết quả
EnqueueDequeue Quit Thao tác bạn muốn thực hiện? Enqueue 45 Enqueue Dequeue Quit Thao tác bạn muốn thực hiện? Enqueue 56 Enqueue Dequeue Quit Thao tác bạn muốn thực hiện? Enqueue 89 Enqueue Dequeue Quit Thao tác bạn muốn thực hiện? Dequeue Enqueue Dequeue Quit Thao tác bạn muốn thực hiện? Dequeue Enqueue Dequeue Quit Thao tác bạn muốn thực hiện? Quit
Giải thích
Lớp
Queue_structvới các thuộc tính cần thiết được tạo.Phương thức
__init__khởi tạo danh sách rỗng.Phương thức
check_emptykiểm tra danh sách rỗng.Phương thức
enqueue_elemthêm phần tử vào danh sách.Phương thức
dequeue_elemxóa phần tử khỏi danh sách.Một đối tượng của lớp
Queue_structđược tạo.Nhập lựa chọn thao tác từ người dùng.
Thực hiện thao tác tương ứng.
Hiển thị kết quả ra bảng điều khiển.