全排列打印(一)
2012-11-08 22:46
169 查看
给出数字1,2,3.打印出所有可能的排列。如:123, 132, 213, 231...
#include <iostream> using namespace std; void print(int a[], int begin, int n) { if (begin == n) { for (int i = 0; i < n; i++) { cout << a[i]; } cout << endl; } else { for (int i = begin; i < n; i++) { swap(a[begin], a[i]); print(a, begin+1, n); swap(a[begin], a[i]); } } } void printAll(int a[], int n) { print(a, 0, n); } int main() { int a[] = {1, 2, 3}; printAll(a, 3); return 0; }
相关文章推荐
- 打印1到最大的n位数:大数问题,全排列实现
- 打印N个数的全排列
- 打印一个数组的全排列
- C程序:打印1,2,3,..,n的全排列
- 打印字符串的全排列
- 全排列 利用template的时候,用cout打印不需要考虑变量的类型,这点比printf好用
- 全排列打印
- 面试题12: 打印1到最大的n位数(递归解法,全排列的递归解法)
- 打印1,2,3,..,n的全排列
- 打印字符串的全排列
- 设计算法打印出一串字符的全排列。假设所有的字符都不同。
- Python实现全排列的打印
- 第四题:如果一个字符数组中有重复的字符 如"abbcd" 那么如何编程打印其全排列
- 全排列打印
- 打印全排列和stl::next_permutation
- 打印字符串的全排列
- 全排列打印C++
- 打印1~N的全排列(C++)
- 打印全排列和stl::next_permutation
- 全排列打印(二)