Bắt đầu ngayBắt đầu miễn phí

Triển khai hàng đợi cho tác vụ máy in

Trong video trước, bạn đã học rằng hàng đợi có thể có nhiều ứng dụng, chẳng hạn như quản lý các tác vụ cho máy in.

Trong bài tập này, bạn sẽ triển khai một lớp có tên PrinterTasks(), đại diện cho một hàng đợi đơn giản cho máy in. Để làm điều này, bạn sẽ được cung cấp lớp Queue() với các phương thức sau:

  • enqueue(data): thêm một phần tử vào hàng đợi
  • dequeue(): loại bỏ một phần tử khỏi hàng đợi
  • has_elements(): kiểm tra xem hàng đợi có phần tử hay không. Đây là đoạn mã:
    def has_elements(self):
      return self.head != None

Bạn sẽ bắt đầu viết lớp PrinterTasks() với các phương thức add_document()print_documents(). Sau đó, bạn sẽ mô phỏng việc chạy một chương trình sử dụng lớp PrinterTasks().

Bài tập này là một phần của khóa học

Cấu trúc dữ liệu và Thuật toán với Python

Xem khóa học

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

class PrinterTasks:
  def __init__(self):
    self.queue = Queue()
      
  def add_document(self, document):
    # Add the document to the queue
    self.____.____(document)
      
  def print_documents(self):
    # Iterate over the queue while it has elements
    while self.____.____():
      # Remove the document from the queue
      print("Printing", self.____.____())
Chỉnh sửa và Chạy Mã