Em hãy tìm hiểu chương trình liệt kê dãy bit độ dài n bằng kĩ thuật đệ quy
Giải Chuyên đề Tin học 11 Bài 2: Kĩ thuật quay lui - Cánh diều
Hoạt động 2 trang 56 Chuyên đề Tin học 11: Em hãy tìm hiểu chương trình liệt kê dãy bit độ dài n bằng kĩ thuật đệ quy trong Hình 1 và chạy thử nghiệm chương trình. Cho biết số lượng dãy bit nhị phân độ dài 3, 5, 10 tương ứng là bao nhiêu.
Lời giải:
Dãy bit độ dài n có dạng X = (x0, x1...xn-1), trong đó xi bằng 0 hoặc 1 (0 ≤ i ≤ n-1) có thể mô tả theo cách đệ quy như sau:
- Nếu n > 0 thì phần tử đầu tiên của dãy bằng 0 hoặc 1 và n - 1 phần tử sau là dãy bit độ dài n – 1.
- Ngược lại, nếu n = 0 thì dãy bit độ dài n là dãy rỗng
Việc xây dựng các dãy nhị phân theo thuật toán đệ quy như sau:
1. Bắt đầu từ X rỗng, lệnh x = [] và gọi thủ tục đệ quy backtrack(0) để xây dựng bắt đầu phần tử 0.
2. Thành phần i (0 ≤ i ≤ n-1) sẽ lần lượt nhận giá trị 0 và 1 bằng lệnh for v in range(2): Với mỗi giá trị của v, thành phần i được ghi nhận vào xi của X bằng lệnh x.append(v), lệnh này đẩy v vào cuối X. Sau đó tiếp tục gọi để quy để xây dựng các thành phần còn lại (từ thành phần xi+1... đến thành phần xn-1).
3. Để xét được khả năng tiếp theo, hành động quay lui được thực hiện bằng cách loại bỏ nhị phân thành phần cuối cùng của X bằng lệnh x.pop(). Việc quay lui cũng được diễn ra khi đang xây dựng thành phần xi mà xi đã lần lượt nhận cả hai giá trị 0 và 1, khi đó thành phân xi sẽ bị loại khỏi X và lùi về để xét khả năng tiếp theo cho thành phần xi-1
Lời giải Chuyên đề Tin 11 Bài 2: Kĩ thuật quay lui hay, ngắn gọn khác:
Xem thêm lời giải bài tập Chuyên đề học tập Tin học 11 Cánh diều hay, ngắn gọn khác:
Chuyên đề Tin học 11 Bài 4: Thực hành tổng hợp kĩ thuật duyệt
Chuyên đề Tin học 11 Bài 5: Thực hành kĩ thuật quay lui giải bài toán xếp hậu
Chuyên đề Tin học 11 Bài 6: Dự án: Xây dựng chương trình sử dụng kĩ thuật duyệt
Xem thêm các tài liệu học tốt lớp 11 hay khác:
- Giải Chuyên đề Tin học 11 Kết nối tri thức
- Giải Chuyên đề Tin học 11 Chân trời sáng tạo
- Giải Chuyên đề Tin học 11 Cánh diều
- Giải lớp 11 Kết nối tri thức (các môn học)
- Giải lớp 11 Chân trời sáng tạo (các môn học)
- Giải lớp 11 Cánh diều (các môn học)
Săn SALE shopee Tết:
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.
- Giải Tiếng Anh 11 Global Success
- Giải sgk Tiếng Anh 11 Smart World
- Giải sgk Tiếng Anh 11 Friends Global
- Lớp 11 - Kết nối tri thức
- Soạn văn 11 (hay nhất) - KNTT
- Soạn văn 11 (ngắn nhất) - KNTT
- Giải sgk Toán 11 - KNTT
- Giải sgk Vật Lí 11 - KNTT
- Giải sgk Hóa học 11 - KNTT
- Giải sgk Sinh học 11 - KNTT
- Giải sgk Lịch Sử 11 - KNTT
- Giải sgk Địa Lí 11 - KNTT
- Giải sgk Giáo dục KTPL 11 - KNTT
- Giải sgk Tin học 11 - KNTT
- Giải sgk Công nghệ 11 - KNTT
- Giải sgk Hoạt động trải nghiệm 11 - KNTT
- Giải sgk Giáo dục quốc phòng 11 - KNTT
- Giải sgk Âm nhạc 11 - KNTT
- Lớp 11 - Chân trời sáng tạo
- Soạn văn 11 (hay nhất) - CTST
- Soạn văn 11 (ngắn nhất) - CTST
- Giải sgk Toán 11 - CTST
- Giải sgk Vật Lí 11 - CTST
- Giải sgk Hóa học 11 - CTST
- Giải sgk Sinh học 11 - CTST
- Giải sgk Lịch Sử 11 - CTST
- Giải sgk Địa Lí 11 - CTST
- Giải sgk Giáo dục KTPL 11 - CTST
- Giải sgk Hoạt động trải nghiệm 11 - CTST
- Giải sgk Âm nhạc 11 - CTST
- Lớp 11 - Cánh diều
- Soạn văn 11 Cánh diều (hay nhất)
- Soạn văn 11 Cánh diều (ngắn nhất)
- Giải sgk Toán 11 - Cánh diều
- Giải sgk Vật Lí 11 - Cánh diều
- Giải sgk Hóa học 11 - Cánh diều
- Giải sgk Sinh học 11 - Cánh diều
- Giải sgk Lịch Sử 11 - Cánh diều
- Giải sgk Địa Lí 11 - Cánh diều
- Giải sgk Giáo dục KTPL 11 - Cánh diều
- Giải sgk Tin học 11 - Cánh diều
- Giải sgk Công nghệ 11 - Cánh diều
- Giải sgk Hoạt động trải nghiệm 11 - Cánh diều
- Giải sgk Giáo dục quốc phòng 11 - Cánh diều
- Giải sgk Âm nhạc 11 - Cánh diều