1. Trang chủ
  2. » Thể loại khác

chuong-2-de-qui-va-giai-thuat-de-qui-huongvt-289588419156-1599706242

22 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Slide 1 1 Phép lặp, quy nạp và đệ quy 2 Giải thuật đệ quy 3 Các bài toán liên quan đệ qui  Lặp (interation) biến thể của cùng một thao tác  Quy nạp (induction) kĩ thuật chứng minh các mệnh đề thuộc[.]

1 Phép lặp, quy nạp đệ quy Giải thuật đệ quy Các toán liên quan đệ qui   Lặp (interation): biến thể thao tác Quy nạp (induction): kĩ thuật chứng minh mệnh đề thuộc dạng với n P(n) Ví dụ: với n, tổng n số lẻ n2 Bước sở: Chỉ P(1) , 12=1 Bước quy nạp: Chứng minh P(n) kéo theo P(n+1) Tổng n số lẻ n2, cần cm tổng (n+1) số lẻ (n+1)2 Tổng n số lẻ: 1+3+5+….+ (2n-1)= n2 Khi đó: [1+3+5+….+ (2n-1)] +(2n+1) = n2+2n+1= (n+1)2  Đệ quy (recursion): kĩ thuật định nghĩa khái niệm trực tiếp gián a) Định nghĩa Nếu lời giải P thực lời giải P’ có dạng giống P ta nói lời giải đệ quy  thuật toán đệ quy  Chú ý: ◦ P’ giống P ◦ P’ “nhỏ hơn” P theo nghĩa   Định nghĩa hàm hay thủ tục đệ quy gồm hai phần: (i) Phần neo (anchor): công việc đơn giản, giải trực tiếp mà khơng cần nhờ toán (ii) Phần đệ quy: TH tốn khơng giải phần neo, ta xác định toán gọi đệ qui để giải tốn Phần đệ quy thể tính “quy nạp” lời giải Phần neo đảm bảo cho tính dừng thuật tốn   3.1 Hàm tính giai thừa 3.2 Dãy số Fibonacci 0!=1  1!=1*0!=1  2!=2*1!  3!=3*2!  ……  N!=n*(n-1)! Phần neo phần định nghĩa kq hàm n=0 Phần đệ qui (n>0) phần tính giai thừa n dựa vào n giai thừa n-1  Giải thuật Funtion F(n: integer) Begin if n=0 then F:=1 else F:=n*F(n-1) End;  Phần neo Phần đệ qui  • • • Dựa vào toán cổ liên quan đến ss cặp thỏ Các cặp thỏ không chết Hai tháng sau đời cặp thỏ sinh cặp thỏ (1 đực cái) Mỗi tháng sau lại sinh cặp Giả sử đầu tháng có cặp thỏ đời đến tháng n có cặp thỏ?  N=5 Giữa tháng có cặp (ab) Giữa tháng có cặp (ab) Giữa tháng có cặp (AB)(cd) Giữa tháng có cặp (AB)(cd)(ef) Giữa tháng có cặp( AB)(CD)(ef)(c’d’)(a’b’)  Tính F(n) sau +F(n)=1 n2 Viết hàm đệ qui dãy số Fibonacci? Funtion F(n: integer) Begin if n=3 F=F(n-1)+F(n-2)  Kết thúc b) Ví dụ: Dãy số Fibonacci: F(n)= F(n-1)+F(n2) (phần đệ quy) ◦ với n

Ngày đăng: 30/04/2022, 16:02

w