return到最后 到底return的是0 还是retuen的总和

来源:5-3 递归基础与递归的宏观语意

玉滨123

2019-01-11

课程中有两个return,
第一个return,当l是arr.length时,就返回0,这个确实可以理解 因为最后一个元素救是arr.length-1;

第二个return,就是求和了。

考虑一下临界情况,当第二个return加到 sum(0)的时候,数组就可以有计算结果了。但是此时还有一个 return0的存在。那么到底给主函数返回的是0还是sum和呢

写回答

1回答

liuyubobobo

2019-01-11

根据传入的l的不同,走不同的return。


带入一个含有两个元素的数组,debug单步跟踪试试看,仔细理解一下在什么时候走哪个return,有是怎么一步一步求出一个数组的所有元素的和的:)


建议:结合课程5-5的讲解,仔细理解清楚递归函数的每一步执行过程。


加油!:)

0
4
liuyubobobo
回复
玉滨123
赞:)
2019-01-11
共4条回复

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程