------------- android培训、java培训、java博客、java学习型技术博客、期待与您交流! --------------
编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符
例如:
原始字符串是"abc",打印得到下列所有组合情况
"a" "b" "c"
"ab" "bc" "ca" "ba" "cb" "ac"
"abc" "acb" "bac" "bca" "cab" "cba"
今天的学习笔记了,大牛们不要笑话啊,看了很多人写的,选了一个比较通俗的笨办法,但是这个办法不具备扩展性,希望随着更深层的学习自己会有更好的解决办法。
public class Test{
public static void main(String[] args) {
String s ="abc";
char[] arr = s.toCharArray();
Sort(arr);
}
//排列
public static void Sort(char[] arr)
{
//输出第一行
for(int i = 0;i<arr.length;i++)
{
System.out.print("\""+arr[i]+"\"");
}
System.out.println();
//输出第二行
for(int i = 0;i<arr.length;i++)
{
for(int j = 0;j<arr.length;j++)
{
if(arr[i]!=arr[j])
System.out.print("\""+arr[i]+arr[j]+"\"");
}
}
System.out.println();
//输出第三行
for(int i = 0;i<arr.length;i++)
{
for(int j = 0;j<arr.length;j++)
{
for(int k = 0;k<arr.length;k++)
if(arr[i]!=arr[j]&&arr[i]!=arr[k]&&arr[j]!=arr[k])
System.out.print("\""+arr[i]+arr[j]+arr[k]+"\"");
}
}
System.out.println();
}
}
------------- android培训、java培训、java博客、java学习型技术博客、期待与您交流! -------------