public class h {//k表示当前的交换位置。public static void f(char[] data,int k){if(k==data.length){for(int i=0;i<data.length;i++){System.out.print((data[i]+" "));} System.out.println();}for(int i=k;i<data.length;i++){{char t = data[k]; data[k] = data[i]; data[i] = t;} f(data,k+1);{char t = data[k]; data[k] = data[i]; data[i] = t;} //回溯}}public static void main(String[] args){char[] data = "ABC".toCharArray();f(data, 0);}
}

【Java】递归法求n个元素的全排列相关推荐

  1. 递归法:求n个元素的全排列

    问题:求n个元素的全排列 举例:ABC 其全排列有ABC ACB BAC BCA CAB CBA 法一: 采用分割的思想把第一个元素和后面的其他元素分开思考将问题简单化 public class Qu ...

  2. 用递归法求两个数的最大公约数

    用递归法求两个数的最大公约数 求两个数的最大公约数的思路是,用辗转现除法 辗转相除法求两个数的最大公约数的步骤如下: 先用小的一个数除大的一个数,得第一个余数: 再用第一个余数除小的一个数,得第二个余 ...

  3. 三目运算法求一个大值,以及指定位数的应用,以及函数的声明,以及函数的嵌套,以及函数的递归,以及用递归法求阶乘

    1.三目运算法 首先一般方法比较两个数的大小 用空格和回车都一样 当结果非x即y的时候 我们可以用三目运算法 z=x>y?x:y 如果表达式成立取前面的值,如果表达式不成立取后面的值 也可以改成 ...

  4. 信息竞赛进阶指南--递归法求中缀表达式的值,O(n^2)(模板)

    // 递归法求中缀表达式的值,O(n^2) int calc(int l, int r) {// 寻找未被任何括号包含的最后一个加减号for (int i = r, j = 0; i >= l; ...

  5. C语言编程用递归法求

    7,用递归法求: (x2!)+(xxx3!)+(5个x相乘5!)+-+((2n-2)个x相乘(2n-2)!)当N为某值是上式为几?(到第n项,n和x的值有键盘输入.) #include<stdi ...

  6. 算法学习——求有重复元素的全排列(递归)

    算法学习--求有重复元素的全排列(递归) 思路:看到这个题目首先能想到的一点就是:①我们要求元素的所有全排列②我们要对求出的全排列去重 第一步:求全排列,这里先讨论对不含重复元素的数组元素进行全排列, ...

  7. C语言递归算法求斐波那契,递归法求斐波那契数列(C语言版)

    斐波那契数列: 又称黄金分割数列,指的是这样一个数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ... 在数学上,斐波纳契数列以如下被以递归的方法定义 ...

  8. 减治求有重复元素的全排列

    求n个元素的全排列的所有解可以用减治法:每次拎出一个数做前缀,对剩下的元素再求全排列,直至只剩一个元素.代码源自<算法分析与设计(王晓东)>,复杂度O(n!) 1 //输出k~m的所有全排 ...

  9. PTA——递归法求最大公约数

    个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来. 专栏:PTA习题及解析 介绍:记录了博主在pta学习练题的一些方法与笔记. 目录 前言 1.简介 2.优点 一.题目 ...

最新文章

  1. 《R语言初学指南》一2.3 找到R脚本中的错误
  2. 从hotspot底层对象结构理解锁膨胀升级过程||深入jdk源码理解longadder的分段cas优化机制——分段CAS优化
  3. leetcode -eleven:Container With Most Water
  4. 【学神】1-4 用户及用户组管理
  5. 通信技术计算机通信方向专业,江西科技学院2014年招生通信工程(计算机通信方向)专业介绍...
  6. DevOps实践-从0到1搭建敏捷团队的持续集成环境
  7. 系统部署时的Could not load file or assembly 'Microsoft.VisualStudio.Enterprise.ASPNetHelper问题...
  8. linux 常用压缩格式,Linux常见压缩格式之压缩与解压
  9. 在拓扑引擎内检测到故障,错误代码255
  10. 寻找指定型别的父控件
  11. JSP编程技术4-登录与注销(静态)
  12. jmeter-正则表达式提取器
  13. oracle常用查询语句
  14. S32K144(12)FTM
  15. 2021年安徽省大数据与人工智能应用竞赛大数据(网络赛)-高职组赛题第三部分可视化
  16. linux 安装Docker
  17. 【Python语法】X[:,0]和X[:,1] 什么意思?
  18. dd 命令的使用方法
  19. Excel累加上一行的数值
  20. 什么是多重签名?多重签名的概念

热门文章

  1. APP——功耗测试(耗电测试)——基础知识
  2. 数学建模竞赛常用软件培训2
  3. DS_Store是什么?
  4. 什么是 ETL ?什么是 ELT ?
  5. C#通过TCP实现 HL7医疗系统传输的协议,并使用MLLP协议发送HL7消息
  6. PostgreSQL死锁了怎么办?
  7. 有哪些值得推荐的找电子书的网站?
  8. BBS系统的设计与实现
  9. hal库中的UART使用
  10. 数值模拟使用matlab实现案例