国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java實現多種方式求解最大公約數

2019-11-15 01:18:17
字體:
來源:轉載
供稿:網友
java實現多種方式求解最大公約數
/** * @author nonefly * 2015年8月27日 */public class Gcd {/**  * 暴力嘗試 */public static int gcd0(int a, int b) {if(a < 0 || b < 0)return -1;for (int i = a > b ? b : a; i > 1; i--) {if(a % i == 0 && b % i == 0)return i;}return 1;}/** 解法一  * 歐幾里得算法(輾轉相除法) * 求兩個數(a b,假設a > b)最大公約數, * 每次用較大數a除b取余, * 余數c不為0則讓較大數等于較小數,較小數等于余數,即: * a = b; b= c; */public static int gcd1(int a, int b) {if(a < 0 || b < 0)return -1;if(a == b || a == 0)return b;if(b == 0)return a;if(a < b)return gcd1(a, b % a);elsereturn gcd1(b, a % b);}/** * 更相減損術 來自《九章算術》 * ps:我也不知道這算法來頭,只是知道算法思想,查后才知它的出處和名字~ *  */public static int gcd2(int a, int b) {if(a < 0 || b < 0)return -1;if(a == b)return a;if((a & 1) > (b & 1))return gcd2(a, b >> 1);if((a & 1) < (b & 1))return gcd2(a >> 1, b);if((a & 1) == 0 && (b & 1) == 0)return gcd2(a >> 1, b >> 1) << 1;return gcd2(Math.abs(a - b), b > a ? a : b);}public static void main(String[] args) {System.out.PRintln(gcd0(99, 66));}}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 庆元县| 惠水县| 宁城县| 广丰县| 香港| 夏邑县| 洛隆县| 凉城县| 方正县| 宜兰县| 安吉县| 兴隆县| 婺源县| 高台县| 洮南市| 平潭县| 仙桃市| 环江| 丰原市| 射阳县| 泰宁县| 毕节市| 剑川县| 湘潭市| 江阴市| 景谷| 黄石市| 旬邑县| 德安县| 固原市| 和平区| 新巴尔虎右旗| 五峰| 德令哈市| 西畴县| 清涧县| 天门市| 陇西县| 玛沁县| 察隅县| 锡林郭勒盟|