实现全排列是递归的一个初级应用,主要思想就是,通过每次遍历输出一个结果。
下面的函数实现的效果就是输入一组字符,输出以‘,’分隔的全排列,最多10个,如果有空格或换行,则提前结束。
//Permutation.cpp 通过递归实现全排列
#include<iostream>
using std::cout;
using std::cin;
using std::endl;
const int MAX = 10;
template<class T>
void Swap(T& a, T& b)//交换函数
{
T temp = a