Acwing.基础课.排列数字(c++题解)

给定一个整数 n,将数字 1∼n 排成一排,将会有很多种排列方法。

现在,请你按照字典序将所有的排列方法输出。

输入格式

共一行,包含一个整数 n。

输出格式

按字典序输出所有排列方案,每个方案占一行。

数据范围

1≤n≤7

输入样例:
复制代码
3
输出样例:
复制代码
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

写作不易,点个赞呗!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n;
bool f[8];
int v[8];
void dfs(int h){
    if(h>=n){
        for(int i=1;i<=n;i++)cout<<v[i]<<" ";
        cout<<"\n";
    }
    for(int i=1;i<=n;i++){
        if(f[i])continue;
        f[i]=true,v[h+1]=i;
        dfs(h+1);
        f[i]=false;
    }
}
int main(){
    cin>>n;
    dfs(0);
}
相关推荐
陌诺曦.9 小时前
Python扩展小练习
算法
coder!mq10 小时前
说几个常见的语法糖?
java·开发语言·算法
Lhan.zzZ10 小时前
在 Visual Studio 2022 中打造可扩展的动态链接库模块:从零搭建到原理解析
开发语言·c++·visual studio
LuminousCPP10 小时前
数据结构-双向循环链表
c语言·数据结构·笔记·链表
不爱学英文的码字机器11 小时前
推荐算法梳理,六种主流模型与九步训练流程
算法·机器学习·推荐算法
白狐_79812 小时前
408数据结构第5章:树与二叉树②——遍历、线索树、森林与哈夫曼
数据结构·算法·深度优先
zh路西法12 小时前
【3D SLAM源码解读系列】(二)Small_gicp——5 个积木搭出最优点云配准
c++·pcl·icp·fastgicp·smallgicp·gicp
Jasmine_llq13 小时前
《P15800 [GESP202603 六级] 选数》
数据结构·long long·逆序线性 dp·从后往前推导·转移严格遵循题意·防止总和溢出·复杂度on
fpcc13 小时前
ubuntu26环境下的开发环境安装处理
c++·并行编程