Поэтому я пытался записать n- е число в последовательности Фибоначчи как можно более компактной функцией:
public uint fibn ( uint N )
{
return (N == 0 || N == 1) ? 1 : fibn(N-1) + fibn(N-2);
}
Но мне интересно, смогу ли я сделать это еще более компактным и эффективным, изменив
(N == 0 || N == 1)
в одно сравнение. Есть ли какая-нибудь необычная операция битового сдвига, которая может это сделать?
fibn(N-1) + fibn(N-2)
вместо N * fibn(N-1)
?