为什么是(n-1)+n

来源:5-7 递归函数(一)

Crayonsky

2017-03-18 21:05

不理解为什么是这个公式,带入n=4的话,得出的结果不是10.而是7啊,,,不理解这个点

写回答 关注

3回答

  • 浅_忆
    2017-03-26 14:40:13

     n=getWordNumber(n-1)  +n;

    加下划线的是一部分,引用的自身,n是当天学的,这样算下来就是

    n=n+(n-1)+.....+1

    就是前n天学的单词数

  • 慕粉1416587369
    2017-03-18 21:45:02

    n-1代表之前一天所学的加上n就是今天所学的了

  • 慕粉1738593794
    2017-03-18 21:43:04
    当n=4时
    返回值为:getWordNumber(4-1)+4;
    也就是:getWordNumber(3-1)+3+4;
    最终结果为:getWordNumber(2-1)+2+3+4;由 
    if(n == 1)
        {
            return 1;    //第一天只会1个单词
        }
        getWordNumber(2-1)=1
    每一个"getWordNumber(n-1)+n"都符合getWordNumber函数
    对每一个n都进行一次运算。


    Crayon...

    我想再问一下,这个意思就是知道返回值为1是结束是吗

    2017-04-22 21:38:57

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926206 学习 · 20797 问题

查看课程

相似问题