感觉不太可,我补全代码,这种好像不能保证字母输出的顺序 #include<iostream> #include<string> #include<algorithm> /* 以abc为例 第一个数字 a b c 第二个数字 a b c 第三个数字 a b c */ using namespace std; string s; void swaps(char & x, char & y){ char tmp = x; x = y; y = tmp; } void Factorial(string str,int l, int r){ if(l == r){ cout << str << endl; return; } for(int i = l; i <= r; i++){ swaps(str[l],str[i]); Factorial(str,l+1,r); swaps(str[l],str[i]); } } int main(){ cin >> s; sort(s.begin(),s.end()); cout << s << endl; Factorial(s,0,s.size()-1); return 0; }</algorithm></string></iostream>
点赞

相关推荐

03-04 07:14
门头沟学院 C++
黑皮白袜臭脚体育生:老板:都给工作机会了还想要工资,哪来这么多好事
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务