递归回溯--数字分解java代码
/*
* 5、数字分解
* * 6
* 6
* 5+1
* 4+2
* 4+1+1
* 3+3
* 3+2+1
* 3+1+1+1
* 2+2+2
* 2+2+1+1
* 2+1+1+1+1
* 1+1+1+1+1+1
*
*/
public class Test5 {
public static void main(String[] args) {
/*System.out.println("请输入一个数进行分解:");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();*/
int n=6;
String num = "";
fenjie(n,num);
}
public static void fenjie(int n,String num){
if(n>=1){
for (int i = 1; i<n; i++) {
String str = num;//分解的字符串进行保存
num+=(n-i)+"+"+i;
String[] nums=num.split("\\+");//拆分字符串~用于去重复
boolean b = true;
//这个循环用来去重复
for (int j = 0; j < nums.length-1; j++) {
if(Integer.parseInt(nums[j])<Integer.parseInt(nums[j+1])){
b = false;
}
}
if(b){//如果字符串的后一个数比前一个数大就不打印
System.out.println(num);
}
num= num.substring(0,num.lastIndexOf("+")+1);//截取掉每次结果+后面的数
fenjie(i,num);//递归
num =str;//分支找不到了就还原 进行回溯
}
}
}
}
递归回溯--数字分解java代码相关推荐
- java 递归求 数字分解
问题 :给一个数字,求它所有的加法组合 比如 6的所有组合为: 5 1 4 2 4 1 1 3 3 3 2 1 3 1 1 1 2 2 2 2 2 1 1 2 1 1 1 1 1 1 1 1 1 1 ...
- cholesky分解java代码_Cholesky 分解(转)
Cholesky 分解是把一个对称正定的矩阵表示成一个下三角矩阵L和其转置的乘积的分解. 它要求矩阵的所有特征值必须大于零,故分解的下三角的对角元也是大于零的. Cholesky分解法又称平方根法,是 ...
- 关于把小写数字转化为大写数字的java代码
import java.math.BigDecimal; public class ConvertNumber { /** 定义数组存放数字对应的大写 */ private final static ...
- qr分解java代码_[转载]【原创】基于Givens变换QR分解Matlab代码
如果有任何问题.建议,或者更多资源.代码.视频,欢迎您访问专业的Matlab技术交流平台--Matlab技术论坛http://www.matlabsky.com Wish my dear girl,h ...
- 关于使用二维数组实现输出三角形规律排列数字的Java代码
使用二位函数实现下图中规律数字的打印输出: import java.util.Arrays;public class TestDemo {public static void print(int[][ ...
- Java代码实现归并排序
Java代码实现归并排序 归并排序(Merge Sort) 思路:如果要排序一个数组,我们先把数组从中间分成前后两部分,然后对前后两部分分别排序,再将排好序的两部分合并在一起,这样整个数组就都有序了. ...
- Java代码实现—函数递归
目录 1.前言 2.什么是递归 2.1 一则故事 2.2 递归的概念 2.3 递归策略 2.4 递归的两个必要条件 3.递归代码举例 3.1 n的阶乘(递归实现) 3.2 数字之和 3.3 斐波那契数 ...
- 递归走迷宫java_在Java中的迷宫递归回溯
嗨即时通讯新的网站很抱歉,如果这是一个重复的问题,但以前的任何问题似乎都不符合我的 我在迷宫结构中练习搜索算法,而我在递归回溯中的尝试不起作用 基本上,我在一本书Dietel第7卷上做了一个练习来创建 ...
- 递归学习 斐波那契 java代码实现
文章目录 java代码 单元测试 java代码 package csdn.dreamzuora.recursion;/*** Title: 斐波那契额* Description:*斐波那契数列:0.1 ...
最新文章
- android下使用tcpdump抓包
- 再次探扩展-对xVal进行扩展解决验证不同步的问题
- 如何让你在开发者工具中查看源代码有语法高亮和暗黑主题的效果
- 填问卷,得《2015中国呼叫中心知识库现状与问题报告》
- 训练数据量中关于batch_size,iteration和epoch的概念
- 作业 校正学生成绩 winform
- python冒泡排序原理_如何实现python冒泡排序算法?
- 【华为云技术分享】Docker容器+Phoronix-Test-Suite测试X86和ARM的ffmpeg转码性能
- bzoj1228 [SDOI2009]ED 找规律
- 城市中计算机控制系统的应用,计算机联锁控制系统在北京城铁中的应用
- Spark的那些外部框架
- 笔记本电脑用u盘一键重装系统步骤
- 地级市房价月度数据(2009-2021)
- windows杀死进程
- c/c++实现window简易串口通信
- 软件及系统开发项目可行性分析
- 中国股神透露独特选股思路
- 【leetcode】剑指 Offer 16. 数值的整数次方(shu-zhi-de-zheng-shu-ci-fang-lcof)(快速幂)[中等]
- 循环practice
- MITRE ATTCK框架