Cùng thực hiện, trao đổi, thảo luận thiết kế chương trình sinh tất cả các dãy nhị phân độ dài n
Cùng thực hiện, trao đổi, thảo luận thiết kế chương trình sinh tất cả các dãy nhị phân độ dài n bằng kĩ thuật quay lui.
Giải Chuyên đề Tin 11 Bài 13: Kĩ thuật duyệt quay lui - Kết nối tri thức
Hoạt động 3 trang 59 Chuyên đề Tin học 11: Cùng thực hiện, trao đổi, thảo luận thiết kế chương trình sinh tất cả các dãy nhị phân độ dài n bằng kĩ thuật quay lui.
Lời giải:
Để thiết kế chương trình sinh tất cả các dãy nhị phân độ dài n bằng kĩ thuật quay lui, ta có thể sử dụng đệ quy để thêm lần lượt các số 0 và 1 vào dãy nhị phân.
Bước 1: Viết hàm để sinh dãy nhị phân độ dài n:
Bước 2: Gọi hàm generate_binary_sequence với độ dài của dãy nhị phân cần sinh:
Thu được kết quả:
Lời giải bài tập Chuyên đề Tin 11 Bài 13: Kĩ thuật duyệt quay lui hay, chi tiết khác:
Câu hỏi 1 trang 57 Chuyên đề Tin học 11: Khi đã thực hiện hết các bước lặp tại dòng 2 ở trên ....
Câu hỏi 2 trang 57 Chuyên đề Tin học 11: Lệnh gọi hàm chính của chương trình trên ....
Câu hỏi 3 trang 57 Chuyên đề Tin học 11: Nếu yêu cầu bổ sung thêm 1 lệnh “Nếu thấy
thì .... Câu hỏi 1 trang 59 Chuyên đề Tin học 11: Trạng thái "quay lui" của thuật toán trên nằm ....
Câu hỏi 1 trang 60 Chuyên đề Tin học 11: Trong chương trình 1, động tác “quay lui” nằm ở đâu? ....
Câu hỏi 2 trang 60 Chuyên đề Tin học 11: Giải thích ý nghĩa của lệnh A.pop() tại dòng 8 ....
Luyện tập 1 trang 60 Chuyên đề Tin học 11: Sửa các chương trình trên bổ sung thêm chức năng ....
Luyện tập 2 trang 60 Chuyên đề Tin học 11: Viết chương trình sinh tất cả các xâu (hoặc dãy) ....
Vận dụng 1 trang 60 Chuyên đề Tin học 11: Viết chương trình sinh tất cả các số hex (hệ đếm 16) ....