全排列数字
#include<iostream>using namespace std;const int N = 10;int n = 3;
//最终输出
int path[N];
//记录当前使用过的数
int st[N];void dfs(int u)
{if (u == n){for (int i = 0; i < n; i++)printf("%d ", path[i]);puts("");return;}for (int i = 1; i <= n; i++){if (!st[i]){path[u] = i;//标记当前数已使用st[i] = true;//进入下一层dfs(u + 1);//dfs结束恢复现场st[i] = false;}}
}int main()
{dfs(0);return 0;
}