Tip:
Highlight text to annotate it
X
Ceea ce vreau sa fac in acest video
este sa ma asigura ca toata lumea intelege ce se intampla
cand folosim functiile fibonacci
Aşa că am de gând să se presupună că cineva apeluri cu
un argument de şi ei da treci 5 ca argument
Nu vreau să alegeţi prea mare a unui număr
cuz altfel am voi se explica ea pentru totdeauna
Aşa că haideţi să încercaţi fibonacci(5)
Deci, în această situaţie, în contextul acestei funcții
parametru n chiar aici este mergi la a fi egal cu 5
Deci, în care trec prima, n parametru este mergi la a fi egal cu 5
Modul în care am scris-o
am spus că dacă n < 2 întoarce n
5 este cu siguranta nu mai puţin de 2
aşa că am de gând să merg la partea altceva, dacă clauza
sau clauză altcineva şi întoarcerea spun
Fibonacci (n-1) plus fibonnaci (n-2))
aşa că atunci când eu numesc acest lucru este în cele din urmă se reduce la
Dacă doriţi să cred despre ea în acest fel, sau simplificate
s-ar reveni, ceea ce va fi acelaşi lucru ca fibonacci a
Amintiţi-vă n a fost 5
Deci, n-1 este 4
în plus fibonacci n-2, care, atunci când am fugit n funcţia a fost 5
Deci 5-2 este 3
Ei bine acestea sunt doar mai multe apeluri de funcţii
Deci, acum am de gând să merg din nou
n nu este 5, dar 4 şi 3
aşa că haideţi să încercaţi asta
Deci, aici este egal cu 4 n
n este egal cu 4
Deci, din nou 4 nu este mai mic de 2,
Deci, noi nu facem această parte
vom merge la altcineva
apoi vom reveni fibbonacci(4-1) care este de 3
Deci, acest lucru se întâmplă pentru a simplifica
sau a unei pene ar trebui să spun
fibonnacci 4-1 care este 3
plus fibbonacci de 4-2
care este fibonaacci 2
Deci acest drept peste aici va essenitally reveni acest lucru
şi acest peste aici pe dreapta fibonacci 3
să-mi trage, deoarece acestea sunt de gând să a lua încurcat de curând
Deci, acest lucru se întoarce chestiile astea la magenta
şi eu l-am subliniat cu verde chestiile astea va întoarce
n este acum 3; 3 nu este mai mic de 2
Deci, du-te aici
şi acesta va întoarce fibonacci 3-1, care este fibbonacci (2)
şi în plus fibonacci de 3-2, care este fibonacci (1)
şi apoi vom merge aici
şi am de gând să aibă să calculeze fiecare dintre aceste lucruri
iar acestea sunt doar mai multe apeluri la fibonacci
şi fibonacci(3), astfel încât să vedeţi *** acest lucru este destul implica chiar acum
Am de gând să înceapă scrierea fib scurt pentru fibonacci
astfel încât nu a alerga afară de real estate
(3) atunci când le numeşti Fibonacci
n 3 nu este mai mic de 2
care reduce la fibonacci (3 - 1)
Voi scrie doar fib. prescurtare de la fibonacci
Fibonacci 2 plus fibbonacci (3-2)
plus fibonacci 1
astfel se reduce la care sau descompune la care
şi peste fibonacci aici 2
2 nu este mai mic de 2,
aşa că am de gând să aibă pentru a reveni fibonacci de 2 -1
Fibonacci 1 plus fibonacci 2-2
atât în plus fibonacci 0
Deci se rupe în jos la cele două apeluri la fibonacci
şi peste aici fibonacci(2) acelaşi lucru.
am făcut un apel la fibonacci(2)
that's going to descompun fel ca acest fibonacci(2) făcut
acesta se va rupe în jos la un apel
pentru a fibbonacci de 1 şi fibonacci(0)
şi apoi ne-am fibonacci 1
Deci, acest lucru este interesant.
Deoarece când n este egal cu 1
această clauză până aici, brusc devine relevantă
Deoarece n este mai mic de 2 şi it says n retur
Deci, acest, aceasta chiar aici, se întâmplă să se simplifice
acest termen dreapta peste aici este de gând să simplifice la 1
it's going to evaluate la 1
Şi apoi ne uităm la toate aceste pe aici
Fibonacci (2); ştim că fibonacci(2) duce la fib(1) + fib(0)
asa ca lasa-mi scriu că peste aici
Deci, aici este fibbonacci(1) plus fibbonacci(0)
fibb este scurt pentru fibonacci
şi apoi ştim fibbonacci 1
1 este mai mic de 2, atât de retur n
Deci, acest lucru se întâmplă pentru a reveni 1
Fibonacci 1 întoarce doar 1
Fibonacci 0
şi 0 este mai mic de 2, întoarce 0
Deci fibonacci(0) doar întoarce 0
Fibonacci 0 întoarce 0
Fibonacci 1 întoarce 1
Fibonacci 0 întoarce 0
apoi fibonacci 1 returnează 1
Fibonacci 0 întoarce 0
Deci apel tot timpul interpret este prelucrarea acest funcţiei recursive
are cam să memoreze toate anterioare, *** a ajuns acolo
pentru că o dată în cele din urmă devine în jos în cazurile de bază,
Odată ce ajunge în jos pentru n = 1 sau 0
ea devine de fapt un răspuns numerice
apoi are să construiască până la anterioare reponse
fibbonacci(2) atât dreapta peste aici
este 1 + 0
fibbonacci of(2) este de gând să simplifice la 1
Acest fibonacci(3) este fibonacci(2) + fibbonacci(1)
cei obţine simplificat la 1
Deci, acest lucru se întâmplă să fie 1 + 1
Deci, acest lucru este mergi la a fi 2
Avem energieaici fibbonacci of(2)
fibbonacci(1) + fibbonacci(0) = 1
fibbonacci(2)
1 + 0 este 1
Vom merge la fibonacci 1, aceasta este 1
Şi acum am du-te la acest nivel
Suntem un fel retructuring înapoi până când ajungem înapoi pentru a apela funcţia iniţială
Şi nu de gând să meargă ito detaliile
despre *** interpret de fapt face care
deoarece acesta este acutally o discuţie fascinantă
dar voi cred despre *** ne gândim ce se întâmplă
în timpul în apelul de funcție thisrecursive, şi de ce, de ce este este de lucru
ce este gving ne răspunde la dreapta
Şi apoi vom merge aici fibonacci(4)
fibonacci(4) bine, termenul patra fibonacci
este suma al treilea şi al doilea mandat de fibonacci
care am deja au dat seama
acestea sunt două şi jumătate, doar luaţi suma lor şi obţine 3
al treilea termen fibonacci, prin definirea secvenţa de fibonacci
este suma primul și al doilea mandat
acestea sunt fiecare dintre
suma unul plus unu este două
pe termen al cincilea, al cincilea numărul fibonacci
al cincilea termenul fibonacci
este suma al patrulea şi termenii terțe
sunt trei și două
Deci, trei plus 2 este cinci
Deci, acest drept de lucruri peste aici se întâmplă pentru a evalua-5
Deci sperăm că clarifică un pic
despre *** acest program recusive este de fapt de lucru
elegant despre asta este ceea ce
că aceasta nu ar funcţiona dacă nu te jos şi să definească
cazurile bază de fibonacci(1) şi fibonacci(0)
Acesta ar fi doar ţine autointitulat pentru totdeauna şi niciodată a lua oriunde
şi ceea ce ei cheie cu recursivitate este că se poate apela sine
atâta timp cât de fiecare dată când se solicită, în sine
Acesta este de a face drumul său de la cazurile bază
Acest lucru la un moment dat
în cazul în care acesta ţine autointitulat, ea ţine autointitulat
în cele din urmă este capabil de a construi înapoi aceste apeluri
pentru a reveni la bază cazurile
şi apoi recontruct ceea ce valoarea iniţială era de cea
şi thats ’ de ce său working
fiecare apel la fibonacci este o versiune mai simplă
Eu am un n inferioară
şi în cele din urmă mea n sunt mergi la a lua în cazurile de bază
fapt care va da-mi valorile reale
care pot apoi recontruct pentru apelurile noastre originale
Sperăm că ajută un pic
Recursivitatea poate fi derutant
dar în acelaşi timp
Acesta poate fi, de asemenea, elegant şi frumos în mod propriu