pnn.java

来自「用java实现了数学上的排列组合问题」· Java 代码 · 共 31 行

JAVA
31
字号
import java.util.ArrayList;
import java.util.List;


public class Pnn {

	 public static void main(String arg[]){
		Pnn p = new Pnn();
		String[] results = p.pnn("12345");
		for(int i = 0;i < results.length;i ++){
			System.out.println(results[i]);
		}
	}
	
	public String[] pnn(String str){
		if(str.length() == 1){
			return new String[]{str};
		}
		List list = new ArrayList();
		for(int i = 0;i < str.length(); i ++){
			char c = str.charAt(i);
			String substr = str.substring(0, i) + str.substring(i +1);
			String[] pnnstr = pnn(substr);
			for(int j = 0;j <pnnstr.length;j ++){
				list.add(c+pnnstr[j]);
			}
		}
		return (String[])list.toArray(new String[list.size()]);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?