5-7怎么理解
return getWordNumber(n-1)+n什么意思,这题不是1+2+3+4...10吗?
return getWordNumber(n-1)+n什么意思,这题不是1+2+3+4...10吗?
2017-08-17
return getWordNumber(n-1)+n;是在返回的时候,再调用一次getWordNumber(),
比如当你调用getWordNumber(10),是这样计算的:
getWordNumber(10)=getWordNumber(9)+10
=getWordNumber(8)+9+10
...
=getWordNumber(1)+2+3+...+10
又因为前面知道n为1时,getWordNumber(1) return的值是1,所以就计算出来了1+2+3+...+10
因为这一节讲的是递归函数,所以要用递归的思想考虑问题。所谓递归就是自己调用自己,在这个题目里面,我们简单分析就能看出来是要计算从1一直加到10。可是用递归思想,就要从问题结局,也就是每一天都比前一天多记一个单词,求“第n天”记单词的数量,这样来分析问题。
举报