题目描述
blablabla
样例
#include <iostream>
using namespace std;
int n;
bool st[100];
int stk[100], now = 0;
// 每天学习一个知识点,不能着急,每个知识都要认真学习
void dfs(int u)
{
if(u == n - 1) // 到达最后倒数第二个的时候,最后一个就确定了
{
for(int i = 1; i <= n; i ++ )
{
if(!st[i])
{
stk[++ now] = i;
}
}
for(int i = 1; i <= now; i ++ )
{
cout << stk[i] << " ";
}
cout << endl;
now -- ;
return ;
}
for(int i = 1; i <= n; i ++ )
{
if(!st[i]) // now 还是在上一个函数栈 的
{
st[i] = true;
stk[++ now] = i;
dfs(u + 1);
st[i] = false;
now -- ;
}
}
return ;
}
int main()
{
cin >> n;
dfs(0);
}
算法1
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla