框架
result=[] // 存放所有符合的答案
def backstack(路径,选择列表) // 一条完整路径即是一个答案,选择列表为当前决策树行的各个列元素
{
if (条件符合) // 此时应当运行到决策树最低端
{
resuit.add(路径)
return
}
for(int i=0; i<选择列表的长度; i++) // 列元素循环
{
if isValid(路径,选择列表,i) // 找到符合条件的列元素,代码继续
{continue}
//做选择,将符合的列元素加入到路径中
路径.add(选择列表[i])
backstack(路径,选择列表) // 进入下一行决策树(t1)
路径返回 // 从t1行决策树返回到上一行决策树t0, t0行列元素继续循环,路径返回具体是指将t0行的 当前列的左边列 返回到初始状态
}
def isValid(路径,选择列表,i) {函数体,具体案例具体编码}
示例图(决策树)
注:公众号引用

2001

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



