`
aiyanbo
  • 浏览: 64269 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用递归分解因数

    博客分类:
  • java
阅读更多

有时候,我们需要对一个数字进行因数分解,我用递归帮我们做这件事情,如有不妥之处,还望各位朋友指正!

 

package com.aiy.test;

/**
 * @author aiyanbo
 * @email ayanbo@yeah.net
 */
import java.util.ArrayList;

public class Test {
	public static void main(String[] args) {
		Test test=new Test();
		for (Integer i : test.factor(64)) {
			System.out.print(i+"\t");
		}
	}
	private ArrayList<Integer> list=new ArrayList<Integer>(0);
	private void dissolution(int i){
		for(int j=2;j<i;j++){
			if(i%j==0){
				list.add(j);
				dissolution(i/j);
				break;
			}
		}
	}
	private void last(int i){
		int temp=1;
		for (Integer num : list) {
			temp*=num;
		}
		if(i/temp>=2)
			list.add(i/temp);
	}
	public ArrayList<Integer> factor(int i){
		dissolution(i);
		last(i);
		return list;
	}
}

 

1
0
分享到:
评论

相关推荐

    素因子分解,递归,c实现

    C语言,用递归算法实现素因子分解,方法简洁明了

    java 分解质因数

    此程序可以找出你给的数的质因数,用java编译

    Python实现正整数分解质因数操作示例

    主要介绍了Python实现正整数分解质因数操作,结合实例形式分析了Python循环与递归两种操作方法实现分解质因数功能的相关操作技巧,需要的朋友可以参考下

    整数因子分解问题(分治法\C++实现)

    Description 大于1的正整数 n 都可以分解为 n = x1 * x2 * ......递归实现整数因子分解的计数。 假设对正整数n的因子分解计数为solve(n)。 1)当n=1时,计数加1。 2)当n&gt;1时,对每个因子i,计算solve(n/i)。

    Java实现的质因数分解操作示例【基于递归算法】

    主要介绍了Java实现的质因数分解操作,结合实例形式较为详细的分析了Java基于递归算法实现针对整数的质因数分解相关操作技巧,需要的朋友可以参考下

    实验一:递归函数的设计与实现

    实验目的:掌握递归函数的设计与实现方法 实验原理: 递归函数的设计 实验步骤:编写程序实现教材P12例2-5 整数划分问题 问题描述:整数划分问题是将一个正整数n拆成一组数连加并等于n的形式,且这组数中的最大加数不...

    Java实现将一个正整数分解质因数

    * 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。...  *这个题目很明显是要用递归算法来实现的,打印“*”有些技巧,但也很容易解决,程序如下: import java.util.Scanner; public c

    分解质因数两例.doc

    这个例子演示如何 运用递归来完成分解质因数

    C#,因数分解(质因子分解)Pollard‘s Rho算法的源代码

    因数分解(也称为质因子分解):将一个大整数分解它的质因子之乘积的算法。 Pollard Rho算法的基本思路:先判断当前数是否是素数(质数),如果是,则直接返回。如果不是,继续找到当前数的一个因子(可以不是质...

    JAVA编程题全集(100题及答案)

    将一个正整数分解质因数 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 输出9*9口诀。 利用递归方法求5!。 求100之内的素数 对10个数进行排序 打印出杨辉三角形 计算字符串中子串出现的...

    java-algorithms-implementation:用Java实现的算法和数据结构

    素因数分解 橡皮擦筛 米勒-拉宾检验 使用Euclid算法 使用递归 弦 数字 加 减去 乘 划分 功率 号码 到二进制字符串 使用除法和模数 使用右移和模数 使用BigDecimal 使用除法和加倍 是2的幂 使用循环 使用递归 使用...

    重费米子对巨大的三环形状因子的贡献

    所有一阶因式分解项可以用调和对数表示。 我们还可以通过变量x的泰勒级数获得非一阶因式分解项的解析结果,对于该变量x,我们已近似计算出至少2000个展开系数。 基于该表示,可以在欧几里得区域和区域q2≈0中给出...

    Python100道经典练习题,建议收藏.pdf

    实例010:给⼈看的时间 实例011:养兔⼦ 实例012:100到200的素数 实例013:所有⽔仙花数 实例014:分解质因数 实例015:分数归档 实例016:输出⽇期 实例017:字符串构成 实例018:复读机相加 实例019:完数 实例...

    易语言经典算法

    分解质因数 任意进制转换(大数) 计算星期几(常用公式) 计算星期几(蔡勒公式) 猴子吃桃子 马踏棋盘 打鱼还是晒网 九位累进可除数 十进制转为二进制 九连环 找窃贼 哥德巴赫猜想 最小生成数 农夫过河 旅游最省钱路径 ...

    Python实例100个-word档

    实例014:分解质因数。 实例021:猴子偷桃。 实例022:比赛对手。 实例024:斐波那契数列I。 实例025: 阶乘求和 实例026:递归求阶乘 实例028:递归求等差数列 实例031:字母识词。 实例033:列表转字符串。 实例...

    C语言程序设计-精选习题和案例

    主要案例:进制转换,闰年判断,计算器,水仙花数,九九乘法表,哥德巴赫猜想,图形输出,单词个数统计,首字母转换,正整数分解质因数,数字排列,扩展的素数问题,成绩分类,选手得分计算,连续非素数组,矩阵转置...

    易语言5.0自带源代码[经典数学算法集.rar]

    37.分解质因数 38.任意进制转换(大数) 39.计算星期几(常用公式) 40.计算星期几(蔡勒公式) 41.猴子吃桃子 42.马踏棋盘 43.打鱼还是晒网 44.九位累进可除数 45.十进制转为二进制 46.九连环 47.找窃贼 48.哥德巴赫猜想 ...

    c/c++笔试算法题

    c/c++笔试算法题 1、将一整数逆序后放入一数组中 2、求高于平均分的学生学号及成绩 3、递归实现回文判断 4、组合问题 5、分解成质因数 6、寻找迷宫的一条出路 总计27道算法题 资源来自互联网

    计算机考研机试攻略 - 高分篇(试读).pdf

    3.7 分解素因数 81 3.8 二分快速幂 83 3.9 常见数学公式总结 85 3.10 规律神器OEIS 87 第四章 高精度问题 89 4.1 Python解法 90 4.2 Java解法 91 4.3 C/C++解法 92 第五章 数据结构 93 5.1 栈的应用 94 ...

Global site tag (gtag.js) - Google Analytics