Então, eu estava tentando escrever o n º número na seqüência de Fibonacci em como a função de um compacto quanto possível:
public uint fibn ( uint N )
{
return (N == 0 || N == 1) ? 1 : fibn(N-1) + fibn(N-2);
}
Mas estou me perguntando se posso tornar isso ainda mais compacto e eficiente mudando
(N == 0 || N == 1)
em uma única comparação. Existe alguma operação de mudança de bit sofisticada que pode fazer isso?
fibn(N-1) + fibn(N-2)
vez de N * fibn(N-1)
?