Giải chi tiết chuyên đề Tin học Khoa học máy tính 11 Cánh diều mới bài 1: Khái niệm đệ quy và ví dụ

Giải bài 1: Khái niệm đệ quy và ví dụ sách chuyên đề Tin học Khoa học máy tính 11 Cánh diều. Phần đáp án chuẩn, hướng dẫn giải chi tiết cho từng bài tập có trong chương trình học của sách giáo khoa. Hi vọng, các em học sinh hiểu và nắm vững kiến thức bài học.

Khởi động: Trong toán học, n giai thừa (kí hiệu n!) là tích của n số nguyên dương đầu tiên n!=n x (n-1) x …x 1. Vậy ta có thể dùng công thức sau đây để tính n! được không?

$n!=\left\{\begin{matrix}n\times (n-1)! nếu n\geq 1\\ 1 nếu n = 0 \end{matrix}\right.$

Hướng dẫn trả lời: 

Ta có thể dùng công thức trên để tính m.

1. Một số ví dụ về đệ quy

Hoạt động 1: Hai công thức sau đều được sử dụng để tính số cách chọn k phần tử từ n phần tử sau:

$C(n,k)=\frac{n!}{k!(n-k)!}(2)$

$C(n.k)=\left\{\begin{matrix} C(n-1,k-1)+C(n-1,k) nếu 0<k<n \\ 1 nếu k = 0 \\ 1 nếu k = n\end{matrix}\right.$

Theo em, trong hai công thức (2) và (3), công thức nào là công thức mang tính đệ quy? Em hãy giải thích cho lựa chọn của mình.

Hướng dẫn trả lời: 

Công thức 2 mang tính đệ quy

Sử dụng công thức ( 2 ) để tiếp tục quá trình tính toán, ta có F(n -1)- F(n - 2)+ F(n - 3), f( n - 2) = F(n - 3) + F(n - 4)... Do đó, nếu cứ gọi đến hàm F như vậy thÌ việc tính toán sẽ không có điểm dừng nên ta phải bỎ sang trường hợp đặc biệt được tính toán sẵn là hàm F tại n = 0 có giá trị 0 và tại n - 1 có giá trị 1. Công thức ( 2) là công thức mang tính đệ quy.

2. Khái niệm và các thành phần cơ bản trong định nghĩa đệ quy

Hoạt động 2: Hàm đem Bupbe (búp bê A) ở Hình 3 được sử dụng để mô tả cách đếm số búp bê của bộ Matryoshka một cách đệ quy nếu búp bê A là búp bê lớn nhất của bộ. Em hãy cho biết dấu (?) trong hàm dem_Bupbe (búp bê A) cần được thay bằng gì.

Giải chi tiết chuyên đề Tin học Khoa học máy tính 11 Cánh diều mới bài 1: Khái niệm đệ quy và ví dụ

Hướng dẫn trả lời: 

Dấu (?) trong hàm dem_Bupbe (búp bê A) cần được thay như sau:

return búp bê A

return dem_bupbe (con của búp bê A) + 1

Luyện tập 1: Xét tập S được định nghĩa đệ quy như sau:

a) Phần cơ sở: 3 là phần tử của S.

b) Phần đệ quy: Nếu x thuộc S và y thuộc S thì x + y thuộc S (chú ý: x và y có thể có cùng giá trị).

Em hãy liệt kê 10 phần tử của tập S

Hướng dẫn trả lời: 

Liệt kê 10 phần tử của tập S như sau:

S = 0 ,1 ,1 ,2, 2, 3, 4, 5, 8, 13

Luyện tập 2: Công thức toán học, dãy số hay hình ảnh nào sau đây được xây dựng mang tính đệ quy? Tại sao?

Giải chi tiết chuyên đề Tin học Khoa học máy tính 11 Cánh diều mới bài 1: Khái niệm đệ quy và ví dụ

k) 1, 1, 2, -6, -24, 120, ...

l) 4, 8, 12, 16, 20, 24, 28, ...

m) $g(n)=\left\{\begin{matrix}\\ g(n-1)+g(n-2)+2n nếu n\geq 21 nếu n = 0 \\ 2 nếu n = 1\end{matrix}\right.$

n) $f(n)=\left\{\begin{matrix} 3^{n}+2n-1 nếu n>2 \\ 1 nếu n=1 hoặc n=2 \end{matrix}\right.$

Hướng dẫn trả lời: 

Công thức toán học, dãy số hay hình ảnh được xây dựng mang tính đệ quy: a, d, g, l , m

=> Lời giải của nó có thể đưa về lời giải của bài toán P′ nhỏ hơn nó và có dạng giống nó, đồng thời lời giải của P′ không cần dùng tới P. Lời giải cho những bài toán như vậy được gọi là giải thuật đệ quy.

Luyện tập 3: Kí hiệu tập hợp tất cả các số nguyên dương lẻ là S. Em hãy:

a) Đưa ra định nghĩa đệ quy cho tập S.

b) So sánh cách mô tả tập S sử dụng định nghĩa đệ quy mà em xây dựng được ở câu a) với hai cách sau đây:

Cách liệt kê các phân tử: S = {1, 3, 5, 7, 9....}

Cách sử dụng mệnh để logic: S = {x | x ∈ N*, x không chia hết cho 2}.

Hướng dẫn trả lời: 

a) Đệ quy là phương pháp dùng hàm để gọi lại chính nó. Trong quá trình giải thuật, một hàm ta lại có thể gọi lại chính tên hàm đó để tiếp tục giải dựa trên dữ liệu đã khai báo trước đó thì được gọi là đệ quy.

b) So sánh cách mô tả tập S

Ưu điểm lớn nhất của phép đệ quy là tiếp cận xử lý vấn đề bằng những đoạn code sạch, gọn gàng, dễ đọc, dễ hiểu. Nhược điểm rõ ràng là nguy cơ cao tràn bộ nhớ Stack như đã giải thích ở trên.

Cùng giải quyết một bài toán nhưng một phương án khác để thay thế đệ quy là sử dụng vòng lặp.

Dù vòng lặp có một ưu điểm là chỉ có một vòng duy nhất được gọi ra và ta sẽ không phải lo nghĩ gì về vấn đề tràn bộ nhớ Stack. Nhưng vòng lặp cũng có một nhược điểm so với đệ quy là code xử lý sẽ viết dài và phức tạp hơn.

Vận dụng: Trong phòng họp có người, mỗi người bắt tay lần lượt n - 1 người còn lại, giữa hai người bất kì chỉ bắt tay nhau đúng một lần. Em hãy:

a) Xác định số lượng cái bắt tay diễn ra trong phòng khi n = 0, 1, 2, 3, 4.

b) Đưa ra định nghĩa đệ quy cho hàm h(n) tính số lượng cái bắt tay đã diễn ra trong phòng có n người.

Gợi ý: Để xây dựng phân đệ quy cho h(n), em hãy xác định lời giải của bài toán khi có 0 người trong phòng từ lời giải của bài toán khi có n - 1 người trong phòng.

Hướng dẫn trả lời: 

Để xây dựng phân đệ quy cho h(n), em hãy xác định lời giải của bài toán khi có 0 người trong phòng từ lời giải của bài toán khi có n - 1 người trong phòng.

a) Trước hết ta nhận thấy rằng nếu có 2 người A và B bắt tay nhau tức là A đã bắt tay B và ngược lại B cũng bắt tay A.

Vì có 10 người nên mỗi người sẽ bắt tay với 10 – 1 = 9 người còn lại.

Tổng số lượt bắt tay của tất cả 10 người là: 10 x 9 = 90.

Do A bắt tay B thì B cũng bắt tay A nên số lần bắt tay ở trên đã được tính 2 lần.

=> Có 90 : 2 = 45 cái bắt tay.

b) Đệ quy là một phương pháp giải quyết vấn đề, trong đó nó sử dụng các trường hợp ví dụ đơn giản hơn của vấn đề để truy hồi, từ đó có thể giải quyết các vấn đề phức tạp hơn.

Câu hỏi tự kiểm tra: Trong những câu sau đây, câu nào đúng khi nói về đệ quy?

a) Ưu điểm của đệ quy là giúp cho mô tả đối tượng, sự việc trở nên ngắn gọn.

b) Khi đưa ra định nghĩa đệ quy của một đối tượng, không nhất thiết phải có phần cơ sở.

c) Trong một công thức đệ quy phần đệ quy đưa ra quy tắc xây dựng đối tượng mới chỉ từ một đối tượng cùng dạng có kích thước nhỏ hơn.

d) Trong một công thức đệ quy, phần cơ sở là phần chứa quy tắc đề xây dựng đối tượng mới từ một đối tượng cùng dạng có kích thước nhỏ hơn.

Hướng dẫn trả lời: 

Những câu sau đây đúng khi nói về đệ quy:

a) Ưu điểm của đệ quy là giúp cho mô tả đối tượng, sự việc trở nên ngắn gọn.

c) Trong một công thức đệ quy phần đệ quy đưa ra quy tắc xây dựng đối tượng mới chỉ từ một đôi tượng cùng dạng có kích thước nhỏ hơn.

d) Trong một công thức đệ quy, phần cơ sở là phần chứa quy tắc đề xây dựng đối tượng mới từ một đôi tượng cùng dạng có kích thước nhỏ hơn.

Tìm kiếm google: Giải chuyên đề Tin học Khoa học máy tính 11 Cánh diều bài 1, giải chuyên đề Tin học Khoa học máy tính 11 CD bài 1, Giải bài 1 Khái niệm đệ quy và ví dụ

Xem thêm các môn học

Giải chuyên đề khoa học máy tính 11 cánh diều


Đia chỉ: Tòa nhà TH Office, 90 Khuất Duy Tiến, Thanh Xuân, Hà Nội
Điện thoại hỗ trợ: Fidutech - click vào đây
Chúng tôi trên Yotube
Cùng hệ thống: baivan.net - Kenhgiaovien.com - tech12h.com