java最小因子_一个整数的所有最小因子
要求:用户输入一个正整数,然后以降序显示它的所有最小因子,例如:120,那么显示的最小因子为5,3,2,2,2。存储这些素数(例如:2,2,2,3,5)获取这些按倒序显示这些因子。
package com.zyn.iteye;
import java.util.ArrayList;
import java.util.List;
public class StackOfIntegers {
//存放分解的素数
List list = new ArrayList();
//主方法,求分解素数
public void getSub(int sum){
//获取中间数的后一个数,保证中间数可以在下面的for中被循环
int middle = getMiddleAfter(sum);
//2是最小的素数,从2开始循环除
for(int i=2;i
//如果i不为素数,直接跳过,循环下个数
if(!isSuShu(i)){
continue;
}
//余数
int yu = sum%i;
//商
int last = sum/i;
if(yu==0){
//余数为0,i为sum的因子,填入list
list.add(i);
//如果商为素数,则添加商到list,程序结束
if(isSuShu(last)){
list.add(last);
return;
}
//如果商不为素数,递归商调用本方法,分解商
getSub(sum/i);
//如果sum可以被素数因子整除,直接分解商,后续的因子不必再循环
break;
}
}
}
//如果可以被2整除,则+1,否则+1后再除以2
public int getMiddleAfter(int num){
if(num%2==0){
return num/2+1;
}else{
return (num+1)/2;
}
}
//判断是否是素数
public boolean isSuShu(int num){
boolean flag = true;
for(int i=2;i
if(num%i==0){
flag = false;
break;
}
}
return flag;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
StackOfIntegers s = new StackOfIntegers();
s.getSub(120);
System.out.println(s.list);
}
}
java最小因子_一个整数的所有最小因子相关推荐
- java notify视频_一个很好的小例子来演示java中的wait()和notify()方法
任何人都可以在 java中为我提供一个很好的小例子演示wait()和notify()功能.我尝试使用下面的代码,但它没有显示我的预期. public class WaitDemo { int i = ...
- java多状态机_一个java状态机样例的代码
在UML当中有状态机视图,这个状态机可以用于自动售货机,自动售票机等等场景,下面是用java代码模拟的一个状态机: 1.状态机接口 package stateMachine; /** * 状态机接口 ...
- java 任意多个整数相加_一个整数分为若干个连续整数之和(使用java实现)
题目描述: 要求写出所有连续的正整数序列,使其之和等于90,小明灵光一闪,立马写上了29,30,31, 他看到解释说明台式告知答案不止一种,过了好一会,他总算算出了所有的5种答案 给你一个正整数Num ...
- python求一个数的因子_求一个整数的所有素数因子的思路是什么?
用筛法. 我们仅考虑分解奇数.(原因?) 现在我们可以假设n=pq,pq必可写作(x+y)(x-y) 也即我们需要找到 x²≡y² (mod n) 我们可以考虑,在 kn 附近的完全平方数 x² 中, ...
- java瀑布流_一个简单的瀑布流实现。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博客地址为http://www.cnblogs.com/jasonnode/ . 瀑布流简介 主 ...
- java鉴权_一个开箱即用的高效认证鉴权框架,专注于restful api的认证鉴权动态保护...
作者:tomsun28 来源:SegmentFault 思否 写在开头 看了看这个专栏的最近一篇文章已经是两年前了,时间过得好快.应该是出学校后时间就很快了.两年前因为用shiro后,自己就按着想法开 ...
- java 分布式任务_一个简单的基于 Redis 的分布式任务调度器 —— Java 语言实现...
折腾了一周的 Java Quartz 集群任务调度,很遗憾没能搞定,网上的相关文章也少得可怜,在多节点(多进程)环境下 Quartz 似乎无法动态增减任务,恼火.无奈之下自己撸了一个简单的任务调度器, ...
- 抽取样本java实验报告_一个自定义classloader的函数抽取壳样本
原标题:一个自定义classloader的函数抽取壳样本 本文为看雪论坛文章 看雪论坛作者ID:lemn 本文为 看雪安卓高研2w班(7月班)优秀学员作品. 下面先让我们来看看学员的学习心得吧! 学员 ...
- java笔试题_一个Java程序员在百度的笔试题整理
以下是程序员去百度的笔试题目整理 欢迎大家讨论,文末有福利. A 卷 Java中 ++ 操作符是线程安全的吗? a=a+b 与 a+=b的区别? 写出Java的单例模式 为什么在重写equals方法的 ...
最新文章
- 完整mes代码(含客户端和server端_Ice简介+Qt代码示例
- 玩转控件:对Dev的GridControl控件扩展
- magento 瘦身数据库
- 颜色模型和颜色应用---颜色选择及其应用
- [学习笔记]0/1分数规划
- git21天打卡Day2-注册账号
- java统计空格代码_java算法大全之统计出其中英文字母、空格、数字和其它字符的个数...
- dma和通道的区别_Java中IO和NIO的本质和区别
- java 获取当前时间并转化为yyyy-MM-dd HH:mm:ss格式(性程安全模式与不安全)
- 数据洞察|Qtum量子链4月主网报告
- 计算机主机报警 声,电脑开机报警声音大全
- 考研英语前缀总结·十五
- Java 线程池设计思想及源码实现
- 怎样赚钱?互联网赚钱才是草根最好的方式!
- python相关库快速下载
- 纷享销客高燕:回归第一性原理,B2B企业如何向精益化要增长
- 高校计算机教师swto分析,信息技术课教师专业成长SWOT分析.doc
- 后端开发常见面试题目
- unity iOS 微信支付 教程
- Python学习:正则表达式匹配手机号,邮箱