Tạo tệp queue py chứa các hàm enqueue(), dequeue(), front(), rear(), isEmptyQueue() của hàng đợi

Giải Chuyên đề Tin 12 Bài 1.1: Hàng đợi - Chân trời sáng tạo

Vận dụng 3 trang 9 Chuyên đề Tin học 12: Tạo tệp queue py chứa các hàm enqueue(), dequeue(), front(), rear(), isEmptyQueue() của hàng đợi. Sau đó:

- Khởi tạo hàng đọi rồng han trởi sáng tạo

- Thực hiện các hàm enqueue() với giá trị thích hợp để hàng đợi có kết quả như Hình 6a.

- Thực hiện các hàm enqueue(), dequeue() với các giá trị thích hợp để hàng đợi có kết quả như Hình 6b.

Tạo tệp queue py chứa các hàm enqueue(), dequeue(), front(), rear(), isEmptyQueue() của hàng đợi

Quảng cáo
Cài đặt app vietjack

Lời giải:

1. Tạo tệp queue py chứa các hàm enqueue(), dequeue(), front(), rear(), isEmptyQueue() của hàng đợi. 

# queue.py


class Queue:

    def __init__(self):

       self.items = []


    def isEmptyQueue(self):

        return self.items == []


    def enqueue(self, item):

       self.items.append(item)


    def dequeue(self):

        if not self.isEmptyQueue():

           return self.items.pop(0)

        else:

           raise Exception("Queue is empty")


    def front(self):

        if not self.isEmptyQueue():

           return self.items[0]

        else:

           raise Exception("Queue is empty")


    def rear(self):

        if not self.isEmptyQueue():

           return self.items[-1]

        else:

           raise Exception("Queue is empty")

2. Khởi tạo hàng đợi rỗng.

- Khởi tạo hàng đợi rỗng.

3. Thực hiện các hàm enqueue() với giá trị thích hợp để hàng đợi có kết quả như Hình 6a.

- Thực hiện các hàm enqueue() để thêm các giá trị thích hợp.

4. Thực hiện các hàm enqueue(), dequeue() với các giá trị thích hợp để hàng đợi có kết quả như Hình 6b.

- Tiếp tục sử dụng các hàm enqueue() và dequeue() để thêm và lấy ra các giá trị thích hợp.

Code như sâu:

# Sử dụng tệp queue.py để thực hiện yêu cầu

from queue import Queue

# Khởi tạo hàng đợi

q = Queue()

# Thực hiện các hàm enqueue để có kết quả như Hình 6a

q.enqueue(30)

q.enqueue(20)

q.enqueue(10)

q.enqueue(50)

q.enqueue(40)

q.enqueue(60)

 print("Hình 6a:")

print("|", end=" ")

for i in range(6):

   print(q.items[i], end=" | ")

print()

# Thực hiện thêm và lấy ra các phần tử để có kết quả như Hình 6b

q.enqueue(0)

q.enqueue(80)

q.enqueue(70)

q.dequeue()

q.dequeue()

q.enqueue(90)

q.enqueue(100)

print("Hình 6b:")

print("|", end=" ")

for item in q.items:

    print(item, end=" | ")

print()

Kết quả khi chạy mã trên sẽ là:

Hình 6a:

| 30 | 20 | 10 | 50 | 40 | 60 | 

Hình 6b:

| 10 | 50 | 40 | 60 | 0 | 80 | 70 | 30 | 90 | 100 | 

Trong đó: Hàng đợi ban đầu (Hình 6a) được thêm từng phần tử theo thứ tự. Hàng đợi sau khi thực hiện các phép enqueue và dequeue (Hình 6b) đạt được kết quả yêu cầu.

Tạo tệp queue py chứa các hàm enqueue(), dequeue(), front(), rear(), isEmptyQueue() của hàng đợi

Quảng cáo

Lời giải bài tập Chuyên đề Tin 12 Bài 1.1: Hàng đợi hay, chi tiết khác:

Quảng cáo
Quảng cáo

Xem thêm lời giải bài tập Chuyên đề học tập Tin học 12 Chân trời sáng tạo hay, chi tiết khác:

Xem thêm các tài liệu học tốt lớp 12 hay khác:

ĐỀ THI, GIÁO ÁN, GÓI THI ONLINE DÀNH CHO GIÁO VIÊN VÀ PHỤ HUYNH LỚP 12

Bộ giáo án, đề thi, bài giảng powerpoint, khóa học dành cho các thầy cô và học sinh lớp 12, đẩy đủ các bộ sách cánh diều, kết nối tri thức, chân trời sáng tạo tại https://tailieugiaovien.com.vn/ . Hỗ trợ zalo VietJack Official


Giải bài tập lớp 12 sách mới các môn học
Tài liệu giáo viên