目的
输入n个数,对这n个数进行全分列。
样例输入
3
3 2 1
样例输出
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
实现
- #include <bits/stdc++.h>
- using namespace std;
- const int N = 10;
- int main() {
- int n, a[N];
- cin >> n;
- for (int i = 1; i <= n; i++)
- cin >> a[i];
- sort(a + 1, a + n + 1);
- do {
- for (int i = 1; i <= n; i++) {
- if (i != 1)
- cout << " ";
- cout << a[i];
- }
- cout << endl;
- } while (next_permutation(a + 1, a + n + 1));
- return 0;
- }
复制代码 利用STL库里的next_permutation函数实现数组大概容器的全分列。
- next_permutation(起始地址, 终点位置); // 执行一次可以更改一次数组的内容,即改变至下一种排列
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |