2.递归回溯求子集和数问题
Posted step_step
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.递归回溯求子集和数问题相关的知识,希望对你有一定的参考价值。
public class Zi { static int[] w = {1,2,2,4,5,6,6}; static int[] x = new int[w.length]; static int m = 10; static int sum=0; public static void main(String[] args) { for(int i=0;i<w.length;i++){ sum+=w[i]; } Sumofsub(0, 0, sum); } public static void Sumofsub(int s,int k,int r){ x[k]=1; if(s+w[k]==m){ for(int j=0;j<w.length;j++){ System.out.print(x[j]+" "); } System.out.println(); }else if(s+w[k]+w[k+1]<=m){ Sumofsub(s+w[k],k+1,r-w[k]); } if(s+r-w[k]>=m&&s+w[k+1]<=m){ x[k]=0; Sumofsub(s,k+1,r-w[k]); } } }
以上是关于2.递归回溯求子集和数问题的主要内容,如果未能解决你的问题,请参考以下文章