2020-09-12

判断一个列表中是否存在和为t=target的组合数字。

这是在牛客网上做代码题的时候遇到的一个问题中的一个截选代码,我觉得这个迭代很神奇,代码少,却可以遍历了所有的组合可能性。

        def search(a, t):

            if t == 0:

                return True

            if not a:

                return False

            return search(a[1:], t) or search(a[1:], t - a[0])

代码最后一行可以开解成形成了一个二叉树,二叉树上是所有的组合可能性:

2020-09-12