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);
}
相关推荐
坚果派·白晓明25 分钟前
【鸿蒙PC】SDL3 移植:AtomCode Skills 4 步速通多媒体库适配
c++·华为·ai编程·harmonyos·atomcode·c/c++三方库
手写码匠36 分钟前
手写 GraphRAG:从零实现图增强检索增强生成系统
人工智能·深度学习·算法·aigc
BomanGe141 分钟前
NSK重载高刚性滚珠丝杠技术详解
经验分享·算法·规格说明书
赴生-1 小时前
C++进阶 C++11(下)
开发语言·c++
有点。1 小时前
C++(贪心算法一)
c++·贪心算法
Matrix_111 小时前
手机里的计算摄影:广角形变校正算法
人工智能·算法·智能手机·计算摄影
WBluuue2 小时前
数据结构与算法:有序表(二):跳表
数据结构·c++·算法·skiplist
赴生-2 小时前
C++进阶 异常
开发语言·c++
不好听6133 小时前
深入理解链表:线性数据结构的另一面
javascript·数据结构
x138702859573 小时前
c语言中srtlen(指针使用计算字符长度)、传值和传址调用
c语言·开发语言·算法·visual studio