Các nhà khoa học vừa phát hiện ra bản đồ gene của một loài sinh vật
Sách bài tập Tin học 11 Bài 7: Lập trình giải bài toán tìm kiếm - Cánh diều
Câu Fcs30 trang 56 SBT Tin học 11: Bản đồ gene
Các nhà khoa học vừa phát hiện ra bản đồ gene của một loài sinh vật trên Trái Đất có nguồn gốc từ rất lâu về trước (niên đại được xác định dựa trên các dấu vết khảo cổ học). Chuỗi gene di truyền của nó được biểu diễn bởi xâu kí tự S (chỉ gồm các kí tự A..Z). Nhằm đánh giá, nghiên cứu nó, họ muốn xem thử nó có đặc tính T hay không. T cũng được biểu diễn dưới dạng một xâu kí tự (với các kí tự A..Z), tương ứng với một đoạn gene. Người ta cho rằng, loại sinh vật này có tính chất T nói trên nếu chuỗi biểu diễn của T là một chuỗi con của S. Tức là, nếu ta lấy ra các kí tự liên tiếp của S tại vị trí nào đó thì có được T. Em hãy lập trình giải quyết bài toán trên. Dữ liệu: Nhập từ thiết bị vào chuẩn:
• Dòng đầu tiên chứa xâu S.
• Dòng thứ hai chứa xâu T.
Kết quả: Hiển thị ở thiết bị ra chuẩn các số nguyên là những vị trí mà ta tìm thấy được T ở trong S.
Lời giải:
Áp dụng lát cắt danh sách, việc cài đặt khá đơn giản.
S = input ()
T = input ()
for i in range (len (S) - len (T) + 1):
if T == S[i: i+len (T)]:
print (i+1, end = " ")
Mở rộng: Trong thực tế, thuật toán trên chưa đủ hiệu quả, vì việc so sánh hai xấu có độ phức tạp là len(T). Vậy độ phức tạp của thuật toán trên là len(S) x len(T) trong trường hợp xấu nhất. Áp dụng tư tưởng làm mịn dần thuật toán, người ta đã phát minh ra các thuật toán so khớp xâu:
– Hash (thường gặp trong mật mã học – cryptography).
– KMP (tận dụng những kí tự đã được so sánh trước đó để không phải so sánh lại từ đầu).
- Z function.
Em có thể tìm đọc để tăng thêm niềm đam mê với thuật toán.
Lời giải SBT Tin 11 Bài 7: Lập trình giải bài toán tìm kiếm hay khác:
Xem thêm các bài giải sách bài tập Tin học lớp 11 Cánh diều hay, chi tiết khác:
Xem thêm các tài liệu học tốt lớp 11 hay khác:
- Giải sgk Tin học 11 Cánh diều
- Giải Chuyên đề Tin học 11 Cánh diều
- Giải SBT Tin học 11 Cánh diều
- Giải lớp 11 Cánh diều (các môn học)
- 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)
Tủ sách VIETJACK shopee lớp 10-11 cho học sinh và giáo viên (cả 3 bộ sách):
Đã 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.
- 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 Tiếng Anh 11 Global Success
- Giải sgk Tiếng Anh 11 Smart World
- Giải sgk Tiếng Anh 11 Friends Global
- 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