关于dfs中有返回值和无返回值两种写法的问题

Posted zuotongbin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于dfs中有返回值和无返回值两种写法的问题相关的知识,希望对你有一定的参考价值。

我之前写dfs,都是使用一个全局变量,然后在递归边界去修改这个全局变量,这很好理解。但是有返回值的dfs怎么写呢?
这个问题我一直没有去解决,而是一直用的全局变量的方法,而其实有返回值的写法也很简单。
比如下面的代码。
s表示起点,e表示终点,我们每次只能前进一格或者两格,求我们到达终点有多少种方法。有返回值的也很简单,存储好不同分支的结果,相加直接返回即可。这里还是要记住递归的关键点,边界条件,和只思考本层的递归式。如果再思考下一层如何运行的,很容易被绕进去。

def routenum(s, e):
    if s==e:
        return 1
    elif s>e:
        return 0
    return routenum(s+1, e)+routenum(s+2,e)

以上是关于关于dfs中有返回值和无返回值两种写法的问题的主要内容,如果未能解决你的问题,请参考以下文章

Java中方法类里面有返回值和没有返回值问题!

关于作用域

关于AJAX调用,得到返回值总为undefined的疑问

Springboot实战系列之@Value注解的使用心得

Laravel json() 响应返回值两次

java 方法返回值类型 Long与long