perm.cpp
来自「一本全面剖析C++数据结构算法的书籍」· C++ 代码 · 共 31 行
CPP
31 行
// output all permutations of n elements#include <iostream.h>#include "swap.h"template<class T>void Perm(T list[], int k, int m){// Generate all permutations of list[k:m]. int i; if (k == m) {// list[k:m] has one permutation, output it for (i = 0; i <= m; i++) cout << list[i]; cout << endl; } else // list[k:m] has more than one permutation // generate these recursively for (i = k; i <= m; i++) { Swap(list[k], list[i]); Perm(list, k+1, m); Swap(list[k], list[i]); }}void main(void){ char a[] = {'1', '2', '3', '4'}; int n = 3; cout << "The permutations of 123 are" << endl; Perm(a, 0, n-1);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?