各一个字符数组,输出所有字符的排列组合
测试用例:
一个或多个字符,空指针
void Permutation(char* pStr,char* pBegin)
{
if(*pBegin=='\0')
cout<<pStr<<endl;
for(char* p=pBegin;*p!='\0';p++)
{
char tmp=*p;
*p=*pBegin;
*pBegin=tmp;
Permutation(pStr,pBegin+1);
tmp=*p;
*p=*pBegin;
*pBegin=tmp;
}
}
void Permutation(char* pStr)
{
if(pStr==nullptr)
return ;
Permutation(pStr,pStr);
}
int main()
{
char* c=new char[6]{'1','2','3','4','5','\0'};
Permutation(c);
}