递归函数通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小规模的问题。递归需要有边界条件(个人认为写在递归函数的最前)。当边界条件不满足时,递归继续,当边界条件满足时,递归返回。 所以递归即是一层又一层的深入,然后达到了边界值,就会一层一层的返回。
列如我们上一次期末考试的分钱题目 可以用一个递归函数解决。
F(n)=F(n-5)+F(n-3)+F(n-2);
再加上最后的边界值限制,便可以得到结果。
因为递归可能占用很大的内存,不停地进栈出栈所以我们要尽可能的保存结果 即用一个bool数组记录是否算出过数,若为真直接返回,否则递推。
递归函数
最新推荐文章于 2024-11-20 15:11:19 发布