首页 > 其他 > 详细

回溯法代码框架

时间:2016-11-26 20:54:42      阅读:289      评论:0      收藏:0      [点我收藏+]

子集树:

void backtrack(int t){  
  if(t > n) output(x);  
  else{  
    for(int i = f(n,t); i <= g(n,t);i++){  
          x[t] = h(i);  
          if(constraint(t) && bound(t)) backtrack(t+1);  
     }  
  }  
} 

排列树:

void backtrack(int t){  
  if(t > n) output(x);  
  else{  
    for(int i = f(n,t); i <= g(n,t);i++){  
          swap(x[t],x[i]);  
          if(constraint(t) && bound(t)) backtrack(t+1);  
          swap(x[t],x[i]);   
    }  
  }  
}  

 

回溯法代码框架

原文:http://www.cnblogs.com/jacklovelol/p/6105028.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!