bài 2 đệ quy và gt đệ quy

51 245 0
bài 2 đệ quy và gt đệ quy

Đ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

1 Bài 2:  quy GT  quy 2.1.  quy gii thut  quy 2.2. Thit k gii thut  quy 2.3. Mt s dng bài toán in hình 2.4. Bài tp 2 2.1.  quy gii thut  quy 3  quy  Khái nim: Mt i tng là  quy nu nó c nh ngha qua chính nó hoc mt i tng khác cùng dng vi chính nó bng quy np.  Phân loi: Có 2 loi i tng  quy.   quy tr  c ti  p:  i t  ng A  c mô t  tr  c ti  p qua chính  i t  ng A.      quy gián ti  p:  i t  ng A  c mô t  gián ti  p qua  i t  ng A.     !∀ # ∃!∀  4 Minh ho  quy 1)  quy trc tip 2)  quy gián tip A B C A A A C E B D 5 Mô t  quy  im mnh ca  quy: Cho phép mô t 1 tp ln các i tng bng 1 s ít các mnh  hoc mô t 1 GT phc tp bng 1 s ít các thao tác (1 chng trình con  quy).  Mô t  quy: gm 2 phn  Ph  n neo: Mô t  các tr  ng h  p suy bi  n c  a  i t  ng (gi  i thu  t) qua 1 c  u trúc (thao tác) c  th  xác  nh.  Ph  n  quy: Mô t   i t  ng (gi  i thu  t) trong tr  ng h  p ph  bi  n thông qua chính  i t  ng (gi  i thu  t)  ó 1 cách tr  c ti  p (  quy tr  c ti  p) ho  c gián ti  p (  quy gián ti  p).  Chú ý: N  u không có ph  n neo thì  i t  ng  c mô t  có c  u trúc l  n vô h  n (gi  i thu  t l  p không d  ng)! 6 Mt s mô t  quy thng gp 1. Tp s t nhiên N:  0 là s  t  nhiên. {ph  n neo}  X là s  t  nhiên n  u X – 1 là s  t  nhiên. {ph  n  quy} 2. Giai tha ca 1 s t nhiên N:  0! = 1 {ph  n neo}  N  u N > 0 thì N! = N * (N – 1)! {ph  n  quy} 3. c s chung ln nht (USCLN) ca 2 s t nhiên A B không ng thi bng 0 (A 2 + B 2 > 0)  USCLN(A, 0) = A {ph  n neo}  USCLN(A, B) = USCLN(B, A mod B) {ph  n  quy} 7 Câu hi kim tra nhn thc  Câu hi 1: Gii thích mô t  quy USCLN(A, B). Minh ho quá trình thc hin vi: 1. A = 126 B = 72. 2. A = 72 B = 126.  áp án:  Gii thích:  %&∋( ) ∗+,%−.∋  %& ≠ ( ) / 01/ 01 234564738 )93: ∗+,%−.∋∗+,%−. 8 Câu hi kim tra nhn thc  Minh ho  1: ∗+,%−;<=><. ∋∗+,%−><?≅. ΑΑ∋>< ≠ ( ∋∗+,%−?≅;Β. ΑΑ ∋?≅≠ ( ∋∗+,%−;Β(. ΑΑ ∋;Β≠ ( ∋;Β ΑΑ ∋(  Minh ho  2: ∗+,%−><;<=. ∋∗+,%−;<=><. ΑΑ ∋;<=≠ ( ∋∗+,%−><?≅. ΑΑ ∋><≠ ( ∋∗+,%−?≅;Β. ΑΑ ∋?≅≠ ( ∋∗+,%−;Β(. ΑΑ ∋;Β≠ ( ∋;Β ΑΑ ∋( 9 Mt s bài toán  quy in hình  Bài toán tìm nghim gn úng: ca phng trình f(x)=0 trên on [a, b] vi sai s c, bit f(x) liên tc trên [a, b].  Bài toán “Tháp Hà Ni”: Chuyn mt chng a N a vi kích thc khác nhau t ct A sang ct C theo cách:  M  i l  n ch  chuy  n 1  a .  Khi chuy  n có th  dùng c  t trung gian B.  Trong su  t quá trình chuy  n, các ch  ng  a  các c  t luôn  c x  p  úng (  a có kích th  c bé  t trên  a có kích th  c l  n).  Bài toán “N quân Hu”: Xp N quân hu trên bàn c hình vuông kích thc N x N sao cho trên mi ng chéo, ng ngang, ng dc ch có úng 1 quân Hu. 10 c im hàm  quy  Khái nim: mt chng trình con mô t gii thut  quy gi là chng trình con  quy, hay hàm  quy.  Pascal (hàm, th  t  c), C/C++ (hàm có ki  u, hàm void).  c im: mt hàm  quy có 3 c im sau 1. Có l  i g  i  n chính nó: trong thân hàm  quy có ch  a l  i g  i hàm t  i chính hàm  quy  ó. 2. Kích th  c bài toán gi  m d  n: m  i l  n có l  i g  i hàm  quy thì kích th  c c  a bài toán  ã thu nh  h  n tr  c. 3. Có tr  ng h  p suy bi  n: là tr  ng h  p  c bi  t mà khi x  y ra thì bài toán s   c gi  i quy  t theo 1 cách khác h n quá trình g  i hàm  quy c ! ng k  t thúc.  Χ∆0∀383Ε 0 Φ 6Γ/03&Η [...]... hàm quy ó 2 Kích th c bài toán gi m d n: mi l n có l i gi hàm quy thì kích th c c a bài toán ã thu nh hn tr c 3 Có tr ng h p suy bi n: là tr ng h p c bi t mà khi x y ra thì bài toán s c gi i quy t theo 1 cách khác quy c!ng k t thúc h n quá trình gi hàm Χ  ∆ 0∀3 8 3 Ε  0   Φ  6 Γ / 03&Η 10 c i m hàm Phân lo i: Có 2 lo i hàm mô t quy quy quy, t ng ng vi 2 lo i quy. .. X =2 X=1 //X ch∀n X = 10 / 2 //X l# X=5*3+1 //X ch∀n X = 16 / 2 //X ch∀n X=8 /2 //X ch∀n X=4 /2 //X ch∀n X =2/ 2 //K t thúc 12 quy gián tip: Gi thit Collatz Bài toán (da trên khng nh gi thuy t Collatz là úng): “Cho tr c s 1 cùng v i hai phép toán * 2 / 3, hãy s dng mt cách hp lý hai phép toán ó  bi n s 1 thành mt s nguyên d ng X cho tr c.” Ví d: X = 10 ta có biu di∃n 1 * 2 * 2 * 2. .. 2 / 3 * 2 = 10 Gi i thu t:  biu di∃n X chia 2 tr ng h p: N u X ch∀n, thì tìm cách biu di∃n s X / 2 vi t thêm phép toán * 2 vào cu i N u X l#, thì tìm cách biu di∃n s X * 3 + 1 vi t thêm phép toán / 3 vào cu i 13 quy gián tip: Gi thit Collatz void XuLySoLe(int X) { XuLySo(X * 3 + 1); printf(“ / 3”); } //khi X l void XuLySoChan(int X) { XuLySo(X / 2) ; printf(“ * 2 ); } //khi X ch n 14 quy. .. = A USCLN(A, B) = USCLN(B, A mod B) {ph n neo} {ph n quy} 6 Câu h i ki m tra nh n thc Câu hi 1: Gii thích mô t quy USCLN(A, B) Minh ho quá trình thc hi n vi: 1 A = 126 B = 72 2 A = 72 B = 126 áp án: Gi i thích: %&  ∋ ( ) ∗+,%−   ∋  %&  ≠ ( ) / 01  /  01 23 456 473 8 ) 9 3: ∗+,%−   ∋ ∗+,%−     7 Câu h i ki m tra nh n thc Minh ho 1: ∗+,%−;< ∋... không d ng)! 5 M t s mô t quy th ng g p 1 T p s t nhiên N: 0 là s t nhiên {ph n neo} X là s t nhiên n u X – 1 là s t nhiên {ph n quy} 2 Giai th a c a 1 s t nhiên N: 0! = 1 N u N > 0 thì N! = N * (N – 1)! {ph n neo} {ph n quy} 3 c s chung ln nht (USCLN) c a 2 s t nhiên A B không ng thi bng 0 (A2 + B2 > 0) USCLN(A, 0) = A USCLN(A, B) = USCLN(B, A mod B) {ph n neo} {ph n quy} 6 Câu h i ki m tra... t trên a có kích th c l n) Bài toán “N quân H u”: X p N quân hu trên bàn c hình vuông kích th c N x N sao cho trên mi ng chéo, ng ngang, ng dc ch có úng 1 quân Hu 9 c i m hàm quy Khái ni m: m t ch ng trình con mô t gii thut quy gi là ch ng trình con quy, hay hàm quy Pascal (hàm, th tc), C/C++ (hàm có kiu, hàm void) c i m: m t hàm quy có 3 c im sau quy có cha 1 Có l i gi n chính...p b ng 1 s ít các thao tác (1 ch ng trình con quy) Mô t quy: gm 2 phn Ph n neo: Mô t các tr ng h p suy bi n c a i t ng (gi i thu t) qua 1 c u trúc (thao tác) c th xác nh Ph n quy: Mô t i t ng (gi i thu t) trong tr ng h p ph bi n thông qua chính i t ng (gi i thu t) ó 1 cách tr c ti p ( quy tr c ti p) hoc gián ti p ( quy gián ti p) Chú ý: N u không có ph n neo thì i t ng c mô t... ( ∋ ∋ ∋ ∋ ∋ ∗+,%−;< ∗+,%−> . 1 Bài 2:  quy và GT  quy 2. 1.  quy và gii thut  quy 2. 2. Thit k gii thut  quy 2. 3. Mt s dng bài toán in hình 2. 4. Bài tp 2 2.1.  quy và gii thut  quy 3  quy . XuLySoChan(X); } 16 2. 2. Thit k gii thut  quy 2. 2.1. Hàm N! 2. 2 .2. Dãy s Fibonacci 2. 2.3. Chú ý 17 2. 2.1. Hàm N!  Mô t  quy: 1 n  u N = 0 (ph  n neo) N! = N * (N - 1)! n  u N > 0 (ph  n. B) {ph  n  quy} 7 Câu hi kim tra nhn thc  Câu hi 1: Gii thích mô t  quy USCLN(A, B). Minh ho quá trình thc hin vi: 1. A = 126 và B = 72. 2. A = 72 và B = 126 .  áp án: 

Ngày đăng: 26/05/2014, 23:31

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan