def main(n, m):
all_path = []
path =[]
def dfs(res, n):
if n<=0 or res <= 0:
return
if res == n:
path.append(n)
print(path, res, n)
all_path.append(list(path))
path.pop()
path.append(n)
dfs(res-n, n-1)
path.pop()
dfs(res, n-1)
return
dfs(m, n)
return all_path
print(main(4,5))
python 输入两个整数n和m,从数列1,2,3....n中随意取几个数,使其和等于m,要求将其中所有的可能组合列出来
最新推荐文章于 2021-11-29 02:01:53 发布
本文深入探讨了一种使用递归实现的深度优先搜索(DFS)算法,该算法旨在寻找从给定起点到终点的所有可能路径。通过具体的Python代码示例,详细解释了递归调用的过程以及如何有效地管理和回溯搜索路径。
3181

被折叠的 条评论
为什么被折叠?



