最大公约数算法:如果r是a和b之间相除后的余数,则a和b之间的最大公约数与b和r之间的最大公约数相同,于是可以运用以下公式:gcd(a,b)=gcd(b,r),例如:gcd(36,20)=gcd(20,16)=gcd(16,4)=gcd(4,0),即当第二个数为0时,第一个数为最大公约数,于是36和20的最大公约数为4,运用该算法编写gcd方法
======================================================================
public class Gcd {
public static int gcd(int a, int b) {
int min = a;
int max = b;
if (a > b) {
min = b;
max = a;
}
if (min == 0)
return max;
else
return gcd(min, max - min);
}
public static void main(String[] args) {
System.out.println(Gcd.gcd(36, 20));
}
}
======================================================================
public class Gcd {
public static int gcd(int a, int b) {
int min = a;
int max = b;
if (a > b) {
min = b;
max = a;
}
if (min == 0)
return max;
else
return gcd(min, max - min);
}
public static void main(String[] args) {
System.out.println(Gcd.gcd(36, 20));
}
}
发表评论
-
Struts标签 下拉框 迭代
2009-09-16 09:08 1589案例: select latnid from t_latn; ... -
控制WebLogic解压war包
2009-09-14 08:28 1723在开发web应用时,如果通过weblogic的控制台部署war ... -
线程的基本用法
2009-06-25 11:04 812实现多线程的方法有3种: 1.继承thread类 eg : ... -
Timer的用法
2009-06-25 09:07 1060使用Timer和TimerTask组合 最后 ... -
线程的通俗解释
2009-06-24 08:26 1313但是进程的概念相 ... -
进程通俗解释
2009-06-24 08:21 878进程(Process)指操作系统中一个独立运行的程序。例 ... -
java 调用存储过程 和 PreperStmt的用法
2009-06-14 10:54 1274PreparedStatement 的用法PreparedSt ... -
MyEclipse更改快捷键
2009-06-14 08:22 2307MyEclipse安装完成之后,有一个很常用的快捷键Conte ... -
创建文件,并填写内容的几种方式
2009-05-15 08:23 976import java.io.*; public class ... -
java 存储过程传递数组类型的参数
2009-05-11 08:06 1504import java.sql.*; public cla ... -
javascript onpropertychange
2009-05-09 14:38 1084<!DOCTYPE HTML PUBLIC " ... -
java.math.BigDecimal的精度问题
2009-05-09 11:21 13511. String myMoney = "100 ... -
JAVA设计模式
2009-04-24 09:15 15091、FACTORY(工厂模式) 2、BUILDER(建造模式 ... -
Struts2入门与配置
2009-04-09 08:21 911年前在上海静静等待回家的日子 , 闲来无事,在好友李三年的 ... -
JavaMail
2009-04-03 09:00 716package com.tom; import org.ap ... -
javascript 动态增加删除表格
2009-02-28 09:19 803<!DOCTYPE HTML PUBLIC " ... -
在web.xml不认<taglib>解决办法:
2009-02-22 20:40 728在web.xml不认<taglib>解决办法: ... -
自己实现单点登录
2009-02-21 16:04 1050摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软 ... -
java多线程并发访问解决方案
2009-02-21 15:40 1432多线程并发访问解决方案 synchronized关键 ... -
JAVA字符串常用写法
2009-02-19 08:31 1483/** * Title: Java Bean 工 ...
相关推荐
java中可以使用欧几里德算法来计算最大公约数,该算法的思路是:较大的数除以较小的数,然后将较小的数作为下一次的大数,余数作为小数,直到较小的数为0,返回较大的数。 在java中,计算最大公约数可以使用以下...
在Java编程语言中,求两个正整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是常见的算法问题,这对于理解和掌握基本的数学运算以及编程技巧至关重要。本文将详细介绍...
在Java编程语言中,求最大公约数(Greatest Common Divisor, GCD)是一项常见的算法任务,它在数学和计算机科学中有广泛的应用。本实验主要探讨两种不同的算法来实现这个功能:欧几里得算法(Euclidean Algorithm)...
java语言实现的欧几里得算法,求最大公约数,以及满足(a,b)=x*a+y*b的x和y
### Java语言实现最大公约数和最小公倍数 在计算机科学和数学领域中,最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是两个非常重要的概念。它们广泛应用于算法设计、密码...
最大公约数、最小公倍数 * 最大公约数(a,b) * 12的因数:1、2、3、4、6、12 * 18的因数:1、2、3、6、9、18 * 12和18的最大公约数——6 * 最小公倍数[a,b] * A=2*3*7 * B=2*5*7 * AB的最小公倍数——2*3*5*7...
通过以上分析,我们可以看到,使用Java语言实现两个正整数的最大公约数计算,不仅涉及数学算法的理解,还涵盖了编程语言的具体应用,以及算法优化和测试等软件工程的基本原则。掌握这些知识点,对于提升编程技能和...
本文不仅详细解释了如何使用Java编写程序来找出两个数的最大公约数,还介绍了更高效的欧几里得算法,并扩展讨论了最小公倍数的概念及其计算方法。这些知识不仅对学习编程语言有帮助,也对理解和解决数学和计算机科学...
总结来说,Java实现最大公约数和最小公倍数主要涉及到数论算法和基本的数学知识,而这些知识在程序设计和数据结构的学习中具有重要的地位。熟练掌握这些概念和算法,对于提高编程解决问题的能力非常有帮助。
总之,这段代码示例不仅演示了如何使用欧几里德算法和连续整数检测算法计算最大公约数,还展示了Java中处理用户输入和输出的基本技巧。对于初学者来说,这是一个很好的学习资源,能够帮助他们理解算法实现和基本的...
JAVA实现求最大公约数和最小公倍数 根据欧几里得定律,最大公约数的递归算法
在编程领域,最大公约数(Greatest...通过学习这个小程序,开发者不仅可以掌握如何在Java中实现最大公约数和最小公倍数的计算,还能进一步理解递归算法和基本的数论概念。这对于提升编程技能和解决实际问题都大有裨益。
在这个Java程序中,我们看到如何使用辗转相除法(也称为欧几里得算法)来计算两个数的最大公约数,并基于这个最大公约数进一步计算两个或三个数的最小公倍数。 **最大公约数(GCD):** 最大公约数是指能同时整除...
用欧几里得算法求最大公约数的c++代码,很完整,可以运行
在编程领域,最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是两个基本的数学概念,它们经常在算法和数据结构问题中出现,特别是在处理整数运算时。Java作为广泛应用的编程...
总结来说,这个Java程序通过欧几里得算法实现了求两个数和多个数的最大公约数。欧几里得算法递归实现的效率较高,而计算多个数的最大公约数则是通过分治策略实现的。这种算法和方法在实际编程中非常有用,特别是在...
该算法基于以下原理:两个正整数a和b(a>b)的最大公约数等于a除以b的余数c和b之间的最大公约数。通过反复执行这个过程,最终会得到一个余数为0,此时的b就是a和原来b的最大公约数。 在提供的压缩包中,我们看到几...
### Java求最大公约数 #### 概述 在数学领域,最大公约数(Greatest Common Divisor, GCD)是指能同时整除两个或多个整数的最大正整数。求解最大公约数的方法有很多,其中最著名且效率较高的算法之一便是欧几里得...
主要介绍了Java求解两个非负整数最大公约数算法,结合实例形式分析了java求解最大公约数的实现方法,并附带了循环法与递归法算法思路,需要的朋友可以参考下
欧几里得算法(Euclidean Algorithm)是解决这一问题的经典方法,其基本原理是:对于任何非负整数a和b,a除以b的余数r(a % b),与b和r的最大公约数相等。即GCD(a, b) = GCD(b, a % b)。当b等于0时,a就是两数的...