Gitlab 图像处理 hive vue路由 后台管理ui jquery循环遍历 bootstrap日历控件 docker查看所有容器 dplayer不能全屏 linux查看jdk安装路径 mysql入门 python异常 python变量定义 python调用命令行 java文件 java编程环境 java重写和重载 java函数 java中的基本数据类型 java继承关键字 java课程 java中基本数据类型 java遍历文件夹下所有文件 linux系统安装 战地2单机地图 js倒计时代码 海鸥浏览器 ad下载 qq免安装 手机模拟器下载 系统工具箱 vs2003 图片轮播代码 ip切换软件 js文件上传 ios删除描述文件 ppt格式刷怎么用 windowsjs延时函数 pr书写效果 金水疑云
当前位置: 首页 > 学习教程  > 编程语言

计算a的全排列(解空间为排列树)

2020/10/8 20:14:46 文章标签:

#include<iostream> using namespace std;void swap(int &x,int &y); void dispasolution(int a[],int n); void dfs(int a[],int n,int i);int main() {int a[]{1,2,3};int nsizeof(a)/sizeof(a[0]);cout<<"a的全排列"<<endl;dfs(a,n,0);…

#include<iostream>
using namespace std;

void swap(int &x,int &y);
void dispasolution(int a[],int n);
void dfs(int a[],int n,int i);

int main()
{
    int a[]={1,2,3};
    int n=sizeof(a)/sizeof(a[0]);
    cout<<"a的全排列"<<endl;
    dfs(a,n,0);
    return 0;
}
void swap(int &x,int &y)
{
    int tmp=x;
    x=y;
    y=tmp;
}
void dispasolution(int a[],int n)
{
    cout<<' '<<'(';
    for(int i=0;i<n-1;i++)
        cout<<a[i]<<',';
    cout<<a[n-1]<<')';
}
void dfs(int a[],int n,int i)
{
    if(i>=n)dispasolution(a,n);
    else{
        for(int j=i;j<n;j++){
            swap(a[i],a[j]);
            dfs(a,n,i+1);
            swap(a[i],a[j]);
        }
    }
}


本文链接: http://www.dtmao.cc/news_show_250239.shtml

附件下载

上一篇:Tensor

下一篇:Python、PyGame游戏项目

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?