题6

题目

设有如下递归函数, 则计算 F(8) 需要调用该递归函数的次数为 ( ).

int F(int n) {
    if (n <= 3) return 1;
    else return F(n - 2) + F(n - 4) + 1;
}

A. 7
B. 8
C. 9
D. 10

分析

计算 F(8) 的递归调用树如下图所示:

由图可知,递归函数 F() 调用的次数为 9

C