常用算法之最大公约数与最小公倍数
来源:互联网 发布:淘宝客服班培训多少钱 编辑:程序博客网 时间:2024/06/06 11:43
1.欧几里得算法
欧几里得算法就是采用辗转相处的方法来求最大公约数,这是计算两个数的最大公约数的传统算法,其思路如下:
(1) 对于已知两数m、n,使m>n;
(2)m除以n得余数r;
(3)若r = 0,则n为求得的最大公约数,结束;否则执行步骤4;
(4)将n的值保存到m中,将r的值保存到n中,重复执行步骤2和3。
有了最大公约数,求最小公倍数就很简单了,将两数相乘的乘积除以最大公约数即可。
代码:
- /**
- * 求最大公约数
- */
- int gcd(int a,int b){
- int m,n,r;
- m = a >= b?a:b; //m保存较大的数
- n = a < b?a:b; //n保存较小的数
- r = m % n;
- while(r != 0){
- m = n;
- n = r;
- r = m % n;
- }
- return n;
- }
- /**
- * 求最小公倍数
- */
- int lcm(int a,int b){
- int t = gcd(a,b);
- return (a*b)/t;
- nbsp;
- 常用算法之最大公约数与最小公倍数
- 常用算法之最大公约数与最小公倍数
- 最大公约数与最小公倍数算法
- 算法:求最大公约数与最小公倍数
- ACM常用算法-求最小公倍数或者最大公约数
- 2..第二篇:常用算法之数学算法-----最大公约数和最小公倍数
- 一步一步写算法(之 最大公约数、最小公倍数)
- 一步一步写算法(之 最大公约数、最小公倍数)
- 简单经典算法之最大公约数和最小公倍数
- java算法之最大公约数及最小公倍数
- 一步一步写算法(之 最大公约数、最小公倍数)
- 每日算法练习之最大公约数最小公倍数
- 最大公约数与最小公倍数之三种解法
- 最大公约数和最小公倍数算法
- 最大公约数/最小公倍数-算法
- 最大公约数 最小公倍数 算法
- 最大公约数最小公倍数高效算法
- 最小公倍数&&最大公约数【解析算法】
- 基本BP算法
- VLC播放H264文件问题
- 暴强:用iOS设备控制的HTML5“小蜜蜂”游戏
- 证明类成员函数是共享的。
- misc设备驱动模型及实例解析
- 常用算法之最大公约数与最小公倍数
- 精度数学,mysql
- java线程实例
- 系统学习Linux的十一点建议[转]
- 没有找到QtNetwork或者是无法打开QtNetwork 的解决方法
- 再来一种求大数阶乘的方法
- CSDN高校俱乐部全新改版,欢迎你的加入!
- KMP串匹配算法
- 在C++中如何将ActiveX控件所使用的BSTR数据转换成CHAR字符数组?