递归和非递归分别实现求第 n 个斐波那契数

it2022-05-05  180

递归实现:

int Recursive_Fibonacci(int num) { if (num<3) return 1; else return Recursive_Fibonacci(num - 1) + Recursive_Fibonacci(num - 2); }

非递归实现

void Non_Recursive_Fib(int num) { int a1 = 1; int a2 = 1; int a3 = 0; if (num < 3) printf("%d\n", 1); else { for (int i = 3; i <= num; i++) { a3 = a1 + a2; a1 = a2; a2 = a3; } printf("%d\n", a3); } }

最新回复(0)