13 PP Rekurencjaid 14488 (2)

background image

Podstawy programowania

wykład 12

Dr inż. Jakub Bauman

jakub.bauman@gmail.com

background image

Rekurencja

Dr inż. Jakub Bauman

jakub.bauman@gmail.com

background image

Rekurencja

Często stajemy przed problemem, który
łatwo byłoby rozwiązać, gdybyśmy
mieli w ręku odpowiedź dla mniejszych
danych.

background image

Silnia

Definicja rekurencyjna

definicja nierekurencyjna

background image

int silnia(int n){
if (n==0){

return 1;

}
else {

return n*

silnia(n-1)

;

}
}

Silnia – funkcja rekurencyjna

background image

Postać rekurencyjna

i nierekurencyjna

Ciąg T0, T1…

Za pomocą indukcji matematycznej możemy
udowodnić że:

background image

Istnieją problemy, dla których nie znamy postaci
nierekurencyjnej

lub nie możemy w prosty sposób jej zastosować

Problemy

background image

Ciąg Fibonacciego

Definicja rekurencyjna

Wzór Bineta

background image

int Fibo(int n) {
if (n <= 1) {
Fibo = n;
}
else {
Fibo =

Fibo(n-2)

+

Fibo(n-1)

;

}
}

Fibo – algorytm rekurencyjny

background image

Fibo(4) = Fibo(2) + Fibo(3)

Program obliczy: Fibo(2)

I będzie obliczał Fibo(3) = Fibo(1) + Fibo(2)

Ponieważ wartość Fibo(2) nie jest znana musi obliczyć
ją obliczyć jeszcze raz

Problem

background image

Problem wielokrotnego obliczania tych samych liczb
należy zastosować tablicę zapamiętującą obliczone
już wartości

Przykład oprogramowania takiej funkcji

Problem

background image

Wieże Hanoi

background image

Pytania

Dyskusja

background image

Dziękuję za uwagę!

Dr inż. Jakub Bauman

jakub.bauman@gmail.com


Wyszukiwarka

Podobne podstrony:
13 PP Rekurencja
Fizyka 13 PP klucz(2)
Lekcja 13 pp
Ściąga z PP 13.03.2008, INFORMATYKA
13 BO 1 1 PP 1plus2 Paliwa 6000
PP 2008 13
Rozdział 13, ZiIP, ZiIP, R2, SI, Przygotowanie Produkcji, pp
PP, jakieś stare wykłady procesy poznawcze wyklad 13
Egzamin techniczny ET z- kluczem PRZYKŁAD KC 14-03-13, elektrotechnika PP, studfyja
PP jakieś stare wykłady, procesy poznawcze wyklad 13
PP test 13
PP N norma 13 i 14 dla AKMS
pp domy energooszczedne 13 09 12

więcej podobnych podstron