Recursion and Recurrence Relations Faculty of Informatics Burapha
Recursion and Recurrence Relations Faculty of Informatics, Burapha University 1
Recursively Defined Functions ���� : f(0) = 3 f(n) = 2 f(n-1) + 3 f(0) = 3 f(1) = 2 f(0) + 3 = 2 3 + 3 = 9 f(2) = 2 f(1) + 3 = 2 9 + 3 = 21 f(3) = 2 f(2) + 3 = 2 21 + 3 = 45 f(4) = 2 f(3) + 3 = 2 45 + 3 = 93 จงหา f(5), f(6), f(7), f(8) Faculty of Informatics, Burapha University ภาควชาวทยาการคอมพวเตอร ม. บรพา 5
The Fibonacci Series • ����� �� (Fibonacci series( fn≥ 0 ���� : f 0 : ≡ 0, f 1 : ≡ 1, fn≥ 2 : ≡ fn− 1 + fn− 2 f(4) f(0) = 0 f(3) f(1) = 1 f(2) = f(1) + f(0) = 1 + 0 = 1 f(2) f(1) f(3) = f(2) + f(1) = 1 + 1 = 2 f(1) f(0) f(4) = f(3) + f(2) = 2 + 1 = 3. . . Faculty of Informatics, Burapha University ภาควชาวทยาการคอมพวเตอร ม. บรพา f(2) f(0) 10
Recursive Fibonacci Algorithm procedure fibo(n: nonnegative integer) if n 1 then return n else return fibo(n – 1) + fibo(n – 2) Faculty of Informatics, Burapha University ภาควชาวทยาการคอมพวเตอร ม. บรพา 12
Iterative Fibonacci Algorithm procedure iterative_fibo(n: nonnegative integer) if n = 0 then y : = 0 else begin x : = 0 y : = 1 for i : = 1 to n-1 begin z : = x + y x: =y y : = z end {y is the n-th Fibonacci number} Faculty of Informatics, Burapha University ภาควชาวทยาการคอมพวเตอร ม. บรพา 13
Recurrence Relations Faculty of Informatics, Burapha University ภาควชาวทยาการคอมพวเตอร ม. บรพา 15
Modeling with Recurrence Relations • ������������ Pn-1 ����� : Pn = Pn-1 + 0. 05 Pn-1 = 1. 05 Pn-1 �������� ��� P 0 = 10, 000 �������� : P 1 = 1. 05 P 0 P 2 = 1. 05 P 1 = (1. 05)2 P 0 P 3 = 1. 05 P 2 = (1. 05)3 P 0 … Pn = 1. 05 Pn-1 = (1. 05)n. P 0 20 • �������������� Pn Faculty of Informatics, Burapha University
Modeling with Recurrence Relations • ������������ P 30 ����������� P 0 = 10, 000: P 30 = (1. 05)30 10, 000 = 43, 219. 42 ��������� 30 �� ������������ 43, 219. 42 ��� Faculty of Informatics, Burapha University 21
Example Applications and Solving Compound Interest RR • �������������������� P% ���������� : Mn = Mn− 1 + (P/100)Mn− 1 • Mn = Mn− 1 + (P/100)Mn− 1 = (1 + P/100) Mn− 1 = r Mn− 1 (��� r = 1 + P/100) = r (r Mn− 2) = r·r·(r Mn− 3) …เชนนไปเรอยๆ … = r n M 0 Faculty of Informatics, Burapha University 22
Modeling with Recurrence Relations กระตายทเกดใหม กระตายทมอยเดม Faculty of Informatics, Burapha University
Modeling with Recurrence Relations • ������������ ? • a 1 = 2 (0 ��� 1( • a 2 = 3 (01, 10, ��� 11( • a 3 = a 2 + a 1 = 3 + 2 = 5 • a 4 = a 3 + a 2 = 5 + 3 = 8 • a 5 = a 4 + a 3 = 8 + 5 = 13 • … • �������������� ��� Fibonacci sequence • ����� a 1 = f 3 ��� a 2 = f 4, ���� an = fn+2 Faculty of Informatics, Burapha University 30
Solving Tower of Hanoi RR Hn = 2 Hn− 1 + 1 = 2 (2 Hn− 2 + 1) + 1 = 22 Hn− 2 + 1 = 22(2 Hn− 3 + 1) + 2 + 1 = 23 Hn− 3 + 22 + 1 … = 2 n− 1 H 1 + 2 n− 2 + … + 2 + 1 = 2 n− 1 + 2 n− 2 + … + 2 + 1 (����� H 1 = 1) = = 2 n − 1 Faculty of Informatics, Burapha University 34
- Slides: 35