描述
输入一个小于10的正整数n,按把每个元素都交换到最前面一次的方法,输出前n个小写字母的所有排列。
输入
输入一个小于10的正整数n。
输出
按把每个元素都交换到最前面一次的方法,输出前n个小写字母的所有排列。
输入样例
3
输出样例
abc
acb
bac
bca
cba
cab
直接贴代码= =
#include <iostream> using namespace std; char a[10] = {'a','b','c','d','e','f','g','h','i','j'}; int n; void search(int m); void output(); int main() { cin >> n; search(0); } void search(int m) { if(m == n) { output(); } else { for(int i = m; i < n; i++) { swap(a[i], a[m]); search(m + 1); swap(a[i], a[m]); } } } void output() { for(int i = 0; i < n; i++) { cout << a[i]; } cout << endl; }