def back(path,track): if len(track) == l: tmp = ''.join(track[:]) if tmp not in result: result.append(tmp) return for i in range(len(path)): p = path[i] track.append(p) back(path[:i]+path[i+1:], track) track.pop()
回溯算法的例子
输入参数path是待选择的路,track是走过的路的记录
根据track判断是否加入result
然后选出path的一种
做选择****
返回原始path