请看如下代码:
public static void permutation(char[] a, int m, int n)
{
int i;
char t;
if (m < n - 1)
{
permutation(a, m + 1, n);
for (i = m + 1; i < n; i++)
{
t = a[m];
a[m] = a;
a = t;
permutation(a, m + 1, n);
t = a[m];
a[m] = a;
a = t;
}
}
else
{
printResult(a);
}
}
public static void printResult(char[] text)
{
for (int i = 0; i < text.Length; i++)
{
Console.Write(" {0}",text);
}
Console.WriteLine();
}