用递归函数生成排列组合

template<class T> void Perm(T list[], int k, int m) { int i; if (k == m) { for (i = 0; i <= m; i++) cout << list[i]; cout << endl; } else { for (i = k; i <= m; i++) { Swap(list[k], list[i]); Perm(list, k+1, m); Swap(list[k], list[i]); } } } template<class T> inline void Swap(T& a, T& b) { T temp = a; a = b; b = temp; }

你可能感兴趣的:(用递归函数生成排列组合)