首页 > 代码库 > 输入一个字符串,求字符的所有排列

输入一个字符串,求字符的所有排列

#include <iostream>
#include <cstring>
#include <string>
using namespace std;
void ComStr(char *str, string &s,int m)
{
	if (m == 0)
	{
		cout<<s<<endl;
		return ;
	}
	if (*str != '\0')
	{
		s.push_back(*str);
		ComStr(str+1,s ,m-1);
		s=s.substr(0,s.size()-1);
		ComStr(str+1,s,m);
	}
}
void Com(char *str)
{
	
	if (str == NULL)
	{
		return ;
	}
	string s;
	for(int i=1;i<= strlen(str);i++)
	{
		ComStr(str,s,i);
	}
	

}
int main()
{
	char str[10];
	cin>>str;
	Com(str);
	return 0;
}