shuwei81 2022-10-18 20:21 采纳率: 50%
浏览 169
已结题

python递归函数中通过for循环构建树 for循环运作逻辑

最近工作忙到死 以前也一知半解的 现在彻底想不起来了 脊椎也痛,索性就直接问吧
是这样子的 有哪位可以给我讲述一下通过递归构建树的时候内部for循环的运作逻辑 为啥图1的for循环长这个样子 for循环这些数字代表啥意思 图1成功构建了一个树

img

大家可以看我之前打赏记录 我得到满意答案会给钱的放心

img

def recDCCC(weightlist,maxweight,num,lk,value,llp):
    if num==4:
        return llp ##递归结束条件 并开始新的一轮递归
    if maxweight>20:
        return llp
    ###op.append([val for val in ok if val not in weightlist])##将OK表中不属于valuelist的元素,重复元素剔除出来,除非重复是8,发生重复,立即结束
    else:
        for i in range(len(weightlist)): 
                    print(i)
                    p=weightlist[i][0]
                    l=weightlist[i][1]
                    c=list(set(weightlist)-set([weightlist[i]]))## 被抽出的因子,剩余的进去迭代,剩余的部分便是C
                    llp.append(c)
                    numcoins=recDCCC(c,maxweight+p,num+1,lk+l,value,llp)
    return llp


recDCCC([(2,3),(3,4),(4,8),(5,8),(9,10)],0,0,0,0,[])
  • 写回答

3条回答 默认 最新

  • 这次真没糖 2022-10-18 21:16
    关注

    重新更新回答,简单的说说前面的执行步骤,其实一步一步按照程序执行流程演算下去就行了。文字实在难以解释,可以+V私聊说明

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月26日
  • 已采纳回答 10月18日
  • 请采纳用户回复 10月18日
  • 修改了问题 10月18日
  • 展开全部

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效