當前位置:編程學習大全網 - 源碼下載 - 求java實現String list[] = { "1", "2", "3" }; 的排列組合代碼

求java實現String list[] = { "1", "2", "3" }; 的排列組合代碼

樓上的代碼好復雜...其實幾個循環就可以了,用不著那麽多if判斷

import java.util.ArrayList;

public final class SpecialStringSorter {

public static String[] sort(String[] list){

ArrayList<String> outbuilder=new ArrayList<String>();

if(list.length<2) throw new RuntimeException();//如果list長度小於2會拋出運行時異常(妳想換掉就換掉,比如說返回本身)

for(int a=2;a<=list.length;a++){ //這壹層循環是叠代輸出括號裏的元素數(a代表輸出中的[]裏的元素數),不斷增加

for(int b=0;b<=list.length-a;b++){ //這壹層循環是叠代輸出括號裏的開頭數

for(int c=b+1;c<=list.length-a+1;c++){//這壹層循環是第二個數

StringBuilder sb=new StringBuilder("[");

sb.append(list[b]);

sb.append(","+list[c]);

for(int d=1;d<a-1;d++){ //這壹層循環是壹個[]內容的生成循環

sb.append(","+list[c+d]);

}

sb.append("]");

outbuilder.add(sb.toString());

}

}

}

String[] result=new String[outbuilder.size()];

int i=0;

for(Object resultBuilder:outbuilder){

result[i]=(String)resultBuilder;

i++;

}

return result;

}

public static void main(String[] args){

String[] test={

"1","2","3","4"

};

String[] sortResult=sort(test);

for(String out:sortResult){

System.out.print(out);

}

}

}

  • 上一篇:zigbee智能插座怎麽使用?
  • 下一篇:源代碼的補碼功能
  • copyright 2024編程學習大全網