最近工作忙到死 以前也一知半解的 现在彻底想不起来了 脊椎也痛,索性就直接问吧
是这样子的 有哪位可以给我讲述一下通过递归构建树的时候内部for循环的运作逻辑 为啥图1的for循环长这个样子 for循环这些数字代表啥意思 图1成功构建了一个树
大家可以看我之前打赏记录 我得到满意答案会给钱的放心
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,[])