我正在尝试编写一个递归程序:计算长度为n
的所有字符串,这些字符串可以由string
中给出的所有字符组成,但是sub
中列出的所有字符串均不允许显示为子字符串。
这是我到目前为止编写的程序,但尚未实现sub
的限制,它仅计算string
的排列。
public static void method(String string)
{
method(string, "");
}
public static void method(String string, String soFar)
{
if (string.isEmpty())
{
System.err.println(soFar + string);
}
else
{
for (int i = 0; i < string.length(); i++)
{
method(string.substring(0, i) + string.substring(i + 1, string.length()), soFar + string.charAt(i));
}
}
}
从您的示例中看到,您希望n
个字符的所有排列有重复