要求:方法传两个正整型参数,返回值就是他们的最大公约数,尽可能保证性能。
第一:暴力枚举 时间复杂度是O(min(a, b)))
第二:辗转相除法--欧几里得算法---时间复杂度不太好计算,可以近似为O(log(max(a, b))),但是取模运算性能较差。
该算法基于一个定理:两个正整数a和b(a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。-----使用递归的方法把问题逐步简化。首先,我们先计算出a除以b的余数c,把问题转化成求出b和c的
要求:方法传两个正整型参数,返回值就是他们的最大公约数,尽可能保证性能。
第一:暴力枚举 时间复杂度是O(min(a, b)))
第二:辗转相除法--欧几里得算法---时间复杂度不太好计算,可以近似为O(log(max(a, b))),但是取模运算性能较差。
该算法基于一个定理:两个正整数a和b(a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。-----使用递归的方法把问题逐步简化。首先,我们先计算出a除以b的余数c,把问题转化成求出b和c的