Câu hỏi:
12/07/2024 96Em hãy:
a) Cho biết những thao tác nào cần được thực hiện để có thể lấy số 6 ra khỏi hàng đợi ở Hình 4a và vẽ hàng đợi biểu diễn bởi mảng một chiều tại thời điểm lấy xong số 6. Giá trị biến Front thay đổi thế nào so với trạng thái ở Hình 4b.
b) Vẽ hàng đợi thu được khi tiếp tục thực hiện một thao tác thêm vào số 8. Giá trị biến Back thay đổi thế nào so với Hình 4b.
c) Tiếp tục thực hiện các thao tác lấy ra cho đến khi hàng đợi rỗng, cho biết mối quan hệ giữa giá trị biến Front và Back khi hàng đợi rỗng.
Sách mới 2k7: Tổng ôn Toán, Lí, Hóa, Văn, Sử, Địa…. kỳ thi tốt nghiệp THPT Quốc gia 2025, đánh giá năng lực (chỉ từ 110k).
Quảng cáo
Trả lời:
a) Những thao tác sau cần được thực hiện để có thể lấy số 6 ra khỏi hàng đợi ở Hình 4a và vẽ hàng đợi biểu diễn bởi mảng một chiều tại thời điểm lấy xong số 6. Giá trị biến Front thay đổi thế nào so với trạng thái ở Hình 4b.
- Thực hiện thao tác dequeue (lấy ra) cho đến khi gặp số 6.
- Cập nhật giá trị biến Front sau mỗi lần dequeue.
- Hàng đợi sau khi lấy xong số 6 sẽ có dạng: -7, 12, 4, 9 và các ô trống ở đầu hàng đợi.
- Biến Front sẽ trỏ đến vị trí của số -7.
b) Vẽ hàng đợi thu được khi tiếp tục thực hiện một thao tác thêm vào số 8. Giá trị biến Back thay đổi so với Hình 4b như sau:
- Thực hiện thao tác enqueue (thêm vào) số 8 vào cuối hàng đợi.
- Cập nhật giá trị biến Back sau khi thêm.
- Hàng đợi sau khi thêm số 8 sẽ có dạng: -7, 12, 4, 9, 8 và các ô trống ở đầu và cuối hàng đợi.
- Biến Back sẽ trỏ đến vị trí mới sau số 9.
c) Tiếp tục thực hiện các thao tác lấy ra cho đến khi hàng đợi rỗng, mối quan hệ giữa giá trị biến Front và Back khi hàng đợi rỗng như sau:
- Tiếp tục thực hiện thao tác dequeue cho đến khi hàng đợi không còn phần tử nào.
- Khi hàng đợi rỗng, biến Front và Back sẽ trỏ đến cùng một vị trí, thường là vị trí đầu tiên của mảng nếu hàng đợi được triển khai theo cách này.
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Một phòng máy thực hành có 50 máy tính nối mạng với một máy in duy nhất (Hình 1). Có nhiều người dùng trong phòng đều có nhu cầu in tệp dữ liệu của họ. Theo em, các tệp dữ liệu đó sẽ được in theo thứ tự thế nào và hệ thống phải sắp xếp các tệp dữ liệu này như thế nào để làm được điều đó?
Câu 2:
Tại căng tin, các bạn học sinh đang xếp thành hai hàng để chờ đến lượt nhận suất ăn trưa. Đề công bằng, bác đầu bếp sẽ phát suất ăn trưa cho lần lượt từng bạn theo quy tắc: bạn đầu hàng của hàng thứ nhất, rồi đến bạn đầu hàng của hàng thứ hai. Thứ tự này lặp đi lặp lại cho đến khi một trong hai hàng không còn học sinh. Khi đó, những bạn ở hàng còn lại sẽ được tiếp tục phát theo thứ tự lần lượt từ đầu đến cuối hàng cho đến khi tất cả các học sinh đều nhận được suất ăn của mình. Em hãy viết hàm nhan suat an(QI, Q2) với tham số đầu vào là hai hàng đợi Q1, Q2. Hàm thực hiện in ra màn hình tên của các học sinh một cách lần lượt theo đúng thứ tự nhận suất ăn trưa.
Ví dụ: Các bạn Thái, Trà, Mai theo thứ tự đang xếp ở hàng đợi Q1. Các bạn Đức, Hùng, Cường, Bình, Phước theo thứ tự đang xếp ở hàng đợi Q2. Hàm nhan suat an(Ql, Q2) sẽ in ra màn hình tên của các học sinh theo thử tự như sau: Thái, Đức, Trà, Hùng, Mai, Cường, Bình, Phước.
Câu 3:
Trong các câu sau đây, những câu nào đúng khi nói về hàng đợi?
a) Cơ chế hoạt động của hàng đại là vào trước ra trước.
b) Khác với kiểu dữ liệu mảng, các phần tử trong hàng đợi không được truy cập một cách trực tiếp.
c) Khi thêm một phần tử vào hàng đợi, phần tử này sẽ được đứng đầu hàng đợi.
d) Có thể lấy một phần tử bất kì ra khỏi hàng đợi.
e) Có thể thêm một phần tử mới vào vị trí bất kì trong hàng đợi.
Câu 4:
Hãy cài:
a) Đọc hàm dequeue(Q) ở Hình 9 và cho biết dấu ‘?’ cần được thay bằng gì?
b) Đọc chương trình & Hình 10 và cho biết hàng đợi queue sẽ chứa những phần tử nào và kết quả in trên màn hình là gì khi chạy chương trình.
c) Bổ sung ba câu lệnh temp = dequeue(queue) giống nhau vào cuối đoạn chương trình ở Hình 10 và cho biết kết quả in trên màn hình là gì khi chạy chương trình.
d) Viết hàm isEmptyQueue(Q) với tham số truyền vào là hàng đợi Q. Hàm trả về giá trị True nếu hàng đợi Q đang rỗng không chứa phần tử nào, ngược lại hàm trả về giá trị False.
e) Sửa lại chương trình thu được khi thực hiện xong câu c) như sau: Thay mỗi câu lệnh temp = dequeue(queue) thành đoạn chương trình ở Hình 11. Cho biết kết quả in trên màn hình là gì khi chạy chương trình.
263 câu Trắc nghiệm tổng hợp ôn thi tốt nghiệp THPT môn Tin học Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính có đáp án
15 câu Trắc nghiệm Tin học 12 KNTT Bài 7: HTML và cấu trúc trang web
15 câu Trắc nghiệm Tin học 12 KNTT Bài 10: Tạo liên kết
15 câu Trắc nghiệm Tin học 12 KNTT Bài 8: Định dạng văn bản
15 câu Trắc nghiệm Tin học 12 KNTT Bài 11: Chèn tệp tin đa phương tiện và khung nội tuyến vào trang web
15 câu Trắc nghiệm Tin học 12 KNTT Bài 9: Tạo danh sách, bảng
15 câu Trắc nghiệm Tin học 12 Cánh diều Bài 1: Làm quen với ngôn ngữ đánh dấu siêu văn bản
Đề thi Học kì 1 Tin học 12 có đáp án (Đề 1)
về câu hỏi!