Java实现算法导论中最大公约数欧几里得算法
2016-11-25 11:57
399 查看
最大公约数的欧几里得算法,代码如下:
执行结果:
Iterator Algorithm get gcd: 17
recursion Algorithm get gcd: 17
package cn.ansj; public class GCD { public static void main(String args[]) { GCD g = new GCD(); //d=gcd(a,b)=gcd(b,a mod b) int igcd = g.getGcd(42823, 6409); System.out.println("Iterator Algorithm get gcd: " + igcd); int rgcd=g.Euclid(42823, 6409); System.out.println("recursion Algorithm get gcd: " + rgcd); } /** * author 欧几里得算法递归实现 */ public int Euclid(int a,int b){ if (b==0) return a; else return Euclid(b,a%b); } /** * author 欧几里得算法迭代实现 */ public int getGcd(int i, int j) { int k; while ((k=i%j) != 0) { i = j; j = k; } return j; } }
执行结果:
Iterator Algorithm get gcd: 17
recursion Algorithm get gcd: 17
相关文章推荐
- Java实现算法导论中求解模线性方程解(基于最大公约数欧几里得扩展算法)
- Euclid算法求最大公约数--java实现
- Java程序实现欧几里得算法-计算两个数的最大公约数
- 用java实现欧几里得算法求两个数字的最大公约数
- 三种算法求最大公约数——Java实现
- java实现最大公约数和最小公倍数(每天一道算法题)
- Java实现最大公约数的算法代码
- 最大公约数和最小公倍数(java实现)
- 算法学习之最大子序列算法(java实现)
- 一个无聊男人的疯狂《数据结构与算法分析-C++描述》学习笔记 用C++/lua/python/bash的四重实现(5)欧几里得算法欧几里得算法求最大公约数
- java 算法基础之一寻找最大公约数
- java操练之求两数最大公约数的两种算法思路
- java经典算法_006最大公约数,最小公倍数
- Java实现最小公倍数和最大公约数
- java欧几里得算法求最大公约数
- 最大公约数 欧几里得算法 连续监测算法
- java 最大公约数 最小公倍数 用函数实现
- 算法实现求两个整数的最大公约数!
- C#实现用欧几里德算法、连续整数检测算法、公因数算法求两个非负整数的最大公约数
- 三种算法求最大子段和问题——Java实现