给定一个字符序列,按照字典序,依次输出所有的全排列
#include <iostream>
#include <vector>
#include <map>
using namespace std;
vector<char> v; // origin char list
map<char, int> m; // record char
vector<vector<char>> result; // store result
void perm(vector<char> cur) {
// get a result
if (cur.size() == v.size()) {
result.push_back(cur);
return;
}
// find the char to consider, recursive
for(map<char, int>::iterator it = m.begin(); it != m