/* 实现排列A(n,m)*/
#include "stdio.h"
int m,n,a[30];
long s=0;
int main()
{int p(int k);printf("input n(n<10):"); scanf("%d",&n);printf("input m(<1m<=n):"); scanf("%d",&m);p(1);                          //从第1个数开始            printf("\n总数为:%ld\n",s);   //输出A(n,m)的值return 0;
}
//排列递归函数p(k)
int p(int k)
{int i,j,u;if(k<=m){for(i=1;i<=n;i++){a[k]=i;       //探索第K个数赋值ifor(u=0,j=1;j<=k-1;j++)if(a[k]==a[j])  //若出现重复数字u=1;      //若第K个数不可置,u=1if(u==0)        //若第k个数可置,则检查是否到m个数{if(k==m)   //若以到m个数,则打印出一个解{s++;printf(" ");for(j=1;j<=m;j++)printf("%d",a[j]);if(s%10==0) printf("\n");}else p(k+1); //若没到m个数,则探索下一个P(K+1)               }   }}return s;
}

算法—实现排列 A(n,m)相关推荐

  1. C语言编写Johnson-Trotter算法生成排列

    //Johnson-Trotter算法生成排列#include<stdio.h>int list[99];在这里插入代码片 int num[99]; int dir[99];int cha ...

  2. 算法之排列与组合算法

    1. 前言 本文介绍了常用的排列组合算法,包括全排列算法,全组合算法,m个数选n个组合算法等. 2. 排列算法 常见的排列算法有: (A)字典序法 (B)递增进位制数法 (C)递减进位制数法 (D)邻 ...

  3. [算法] 求排列组合: 从n个数中任选m个数组成一个新数

    #include <iostream> #include <vector>using namespace std;// 求排列组合算法: C(n, m): 从n个数中任选m个数 ...

  4. 算法题-排列组合问题

    27.Algorithm Gossip: 排列组合 说明 将一组数字.字母或符号进行排列,以得到不同的组合顺序,例如1 2 3这三个数的排列组合有:1 2 3.1 3 2.2 1 3.2 3 1.3 ...

  5. Johnson-Trotter算法求全排列

    下面我将贴出Johnson-Trotter算法的JAVA代码 package JT;import java.util.Scanner;public class Johnson_Trotter {//求 ...

  6. 用Johnson-Trotter算法生成排列!

    package decreaseAndConquer; /* * 实现用来生成排列的Johnson-Trotter算法 * 输入:一个正整数n * 输出:{1,...,n}的所有排列的列表 */ im ...

  7. 程序员必备算法,排列组合

    还记得排列组合吗? 在高中的时候最常接触的莫过于排列组合了,毕竟高考必考的嘛.我们先来回忆下这两个的公式是啥: 排列组合公式 如果看到这个还有一丢丢的印象,说明大家的基础都还不错.那么问题来了,大家都 ...

  8. 回溯算法:排列树(全排列)

    排列树理论: 排列树就是给你个序列,如123,得出他的全排列,如下 123: 132: 213: 231: 321: 312: 整个算法步骤画出来就是一个树形结构,需要我们深度遍历,层向思考.什么意思 ...

  9. DFS算法模板-排列组合-python

    DFS算法模板: def dfs(array or root, cur_layer, path, result):if cur_layer == len(array) or not root:resu ...

  10. java 实现 蓝桥杯 算法提高 排列数

    问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一个数n 求0~9十个数的全排列中的第n个(第1个为0123456789). 输入 ...

最新文章

  1. 网页爬虫 html知识,python爬虫
  2. python控制台清屏_Python Shell 怎样清屏?
  3. Java哈利波特死亡圣器下_如果编程语言是《哈利波特》中的人物
  4. python错误代码提示手册_腾讯大佬整理了 Python 所有内置异常,Python高手必备的排错手册...
  5. Configuration property name ‘fdfs.thumbImage‘ is not valid---springcloud工作笔记163
  6. ubuntu16.04源码编译安装nginx1.16.2
  7. stm32捕获占空比_「话说定时器系列」之六:STM32定时器输入捕获话题
  8. 四轴飞行器Bootloader和固件的更新
  9. python静态检查工具哪个好用_介绍几款 Python 类型检查工具
  10. 在鱼池终于挖到0.01的Zcash(ZEC)了,目前正在打款
  11. qs.stringify()详情
  12. qq邮箱对方服务器退回,为什么我用QQ邮箱发邮件被退回来了?他说地 – 手机爱问...
  13. egret 微信小游戏 分享游戏截图
  14. matlab lcl滤波器,LCL滤波器参数性能的比较
  15. 数仓搭建 DWT 层
  16. 使用 Blastp 和 Hmmer 筛选出包含特定结构域的蛋白
  17. 基于卷积神经网络和小波变换的视频监控中的火灾探测
  18. RTMP、RTSP、m3u8、flv 区别及含义
  19. 生活随记 - 房产过户与税费贷
  20. MSCI公布2020年度市场分类评审结果

热门文章

  1. 六元均匀直线阵的各元间距为_给棉花地选购滴灌带时记住这几点,不再为棉花滴水时发愁...
  2. layui分页limit不显示_【图片】新手 分页显示不了呀【layui吧】_百度贴吧
  3. Linux怎么更改声音板卡顺序,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  4. 从WEB应用的角度,一个应用都需要维护一些不同作用范围的状态, 请问下面哪些状态作用域是WEB应用特有的:( )
  5. mysql 删除版本信息_linux 删除mysql
  6. 手机计算机数字显示在桌面上,手机计算器有哪些使用方法
  7. android 自定义弹窗diss,Android中自定义PopupWindow,动态弹窗。
  8. 输入参数_太实用!输入参数1秒算出功率,这款计算工具又快又准
  9. Es6学习笔记(7)----数组的扩展
  10. (网页)swiper.js轮播图插件