易截截图软件、单文件、免安装、纯绿色、仅160KB

java递归

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
public class test {
public static void main(String[] args) {
ArrayList<ArrayList<Integer>> list = getArrays(1, 20, 30);
Iterator<ArrayList<Integer>> iter = list.iterator();
while (iter.hasNext())
System.out.println(Arrays.toString(iter.next().toArray()));
}

public static int sum(int min, int max) {
if (min > max)
return 0;
return (min + max) * (max - min + 1) / 2;
}

public static ArrayList<ArrayList<Integer>> getArrays(int min, int max, int sum) {
if (sum(min, max) < sum)
return null;
ArrayList<ArrayList<Integer>> list = new ArrayList<ArrayList<Integer>>();
for (int i = max; i >= min; i--) {
ArrayList<Integer> array;
if (i > sum)
continue;
else if (i == sum) {
array = new ArrayList<Integer>();
array.add(i);
list.add(array);
}
else {
ArrayList<ArrayList<Integer>> temp = getArrays(min, i - 1, sum - i);
if (temp == null)
continue;
Iterator<ArrayList<Integer>> iter = temp.iterator();
while (iter.hasNext()) {
array = iter.next();
array.add(i);
list.add(array);
}
}
}
return list;
}
}


相关文档:

Java面试题(8)

123、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。
public class ThreadTest1{
   private int j;
   public static void main(String args[]){
ThreadTest1 tt=new ThreadTest1();
Inc inc=tt. ......

JAVA初始化的陷阱

为了说明这个问题先给大家出个问题吧:
请看代码:
public abstract class A {
public A() {
initMethod();
}
public abstract void initMethod();
}
public class B extends A {
static String staticStr = "static1";
private String testStr = "Test1";
/*
* (non-Javadoc)
*
* @see A#in ......

Java 过滤字符串(用模式匹配实现)

//Number 11   过滤字符串中的非数字字符
import java.util.regex.*;
import java.util.Scanner;
public class GuoLv{
    public static void main(String args[]){
       Scanner    reader    = new Scanner(System.in);
  ......

java解析XML的四种方法

XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Definition),XSLT(Exten ......

Java读取配置文件

import java.util.Properties;
public class ConfigReader {
private static Properties cache = new Properties();
static{
   try {
    cache.load(ConfigReader .class.getClassLoader().getResourceAsStream("config.properties"));
   } catch (Exception e) {
 &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号