#include <stdio.h>
#define true 1
#define false 0
int num[10];
//c++直接定义为 bool visit[10]
int visit[10];
void dfs(int index)
{
int i;
if(index == 3)
{
//存放在 num[0]、num[1]、num[2]中
for (i = 0; i < 3; i++)
{
printf("%d ", num[i]);
}
}
//i=0 0~3的全排列
for(i = 1 ; i < 4 ; i ++)
{
if(!visit[i])
{
visit[i] = true;
num[index] = i;
dfs(index+1);
visit[i] = false;
}
}
}
int main()
{
dfs(0);
return 0;
}
这里实现的是1~3的全排列