- 7
- 0
- 约1.35千字
- 约 5页
- 2024-03-20 发布于陕西
- 举报
算法分析与设计回溯法算法框架
回溯算法框架递归回溯回溯法对解空间作深度优先搜索,因此,在一般情况下用递归方法实现回溯法,t表示搜索深度。voidbacktrack(intt){if(tn)//tn表示算法已搜索到叶节点output(x);//记录或输出得到的可行解xelsefor(inti=f(n,t);i=g(n,t);i++){//其中f(n,t),g(n,t)分别表示在当前扩展结点处未搜索过的子树的起始编号和终止编号。x[t]=h(i);//h(i)表示在当前扩展节点处x[t]的第i个可选值if(constraint(t)bound(t)) backtrack(t+1);}}
回溯法算法框架迭代回溯采用树的非递归深度优先遍历算法,可将回溯法表示为一个非递归迭代过程。voiditerativeBacktrack??(){??intt=1;??while(t0){????if(f(n,t)=g(n,t))?????????for(int??i=f(n,t);i=g(n,t);i++){x[t]=h(i);??if(constraint(t)bound(t)){?????????????if(solution(t))?output(x);//输出最优解
原创力文档

文档评论(0)