Em hãy 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
Em hãy:
Giải Chuyên đề Tin 12 Bài 1: Kiểu dữ liệu hàng đợi - Cánh diều
Hoạt động 1 trang 7 Chuyên đề Tin học 12: Em 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.
Lời giả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.
Lời giải bài tập Chuyên đề Tin 12 Bài 1: Kiểu dữ liệu hàng đợi hay, chi tiết khác: