#include <iostream>
using namespace std;
bool is_swap(char* a, int i, int j)
{
while(i<j)
{
if(a[i] == a[j])
return false;
i++;
}
return true;
}
void print_a(char* a, int n)
{
for(int i=0; i<n; i++)
cout<<a[i];
cout<<endl;
}
void f(char* a, int i, int n)
{
if(i==n-1)
{
print_a(a, n);
return ;
}
for(int k=i; k<n; k++)
{
if(is_swap(a, i, k))
{
swap(a[k], a[i]);
f(a, i+1, n);
swap(a[k], a[i]);
}
}
}
int main()
{
char a[] = "1232";
int n= strlen(a);
f(a, 0, n);
return 0;
}
去重全排列
最新推荐文章于 2023-12-30 22:20:56 发布