Pessoal, eu estava procurando na net, maneiras diferentes de calcular a serie de fibonacci. Todas as maneiras que eu encontrava, eram diferentes claro, mas eu as entendia. A única que eu nao encontrei maneiras de entender foi essa tal de recursiva. Pra mim, o codigo nao faz sentido. Porque (Fn-1) + (Fn-2) nao da sempre certo :| digamos o numero 4, ficaria assim: (4-1) + (4-2) = 3+2 = 5 e na serie de fibonacci isso da 3. O codigo seria assim:
public static long fib(long n) {
long h1=n-1;
long h2=n-2;
if (s <= 1) return n;
else
b = fib(h1) + fib(h2);
long h3=h1+h2;
return b;
}
O codigo ta bem "enrolado" com essas variaveis a mais porque eu entrei no modo de depuracao do NetBeans para ver se entendia quando que os valores "mudavam", mas mesmo assim nao entendi nada. Pelo que percebi, h1 e h2 sempre chegam a 1 e 0 respectivamente mas nao entendo como.
Alguem saberia me explicar como o JVM lê isso? Como que eu entenderia esse código? T+

Brigadao pela ajuda ate aqui. Ainda tenho algumas duvidas, mas elas estarao terminando aos poucos heheheheh