求一个数的最大公约数的三种思路——解题笔记
编程之美上的题目:求一个数的最大公约数。
这道题目有三种解题思路,总结如下:
思路一:
直接使用辗转相除法,这个不多介绍,代码如下:
// 直接辗转相除法
int gcd1(int a, int b)
{
for(int m = a%b; m != 0; m = a%b)
{
a = b;
b = m;
}
return b;
}
分析:辗转相除法需要用到数值之间的取余运算,这是非常耗时间的。
求一个数的最大公约数的三种思路——解题笔记
编程之美上的题目:求一个数的最大公约数。
这道题目有三种解题思路,总结如下:
直接使用辗转相除法,这个不多介绍,代码如下:
// 直接辗转相除法
int gcd1(int a, int b)
{
for(int m = a%b; m != 0; m = a%b)
{
a = b;
b = m;
}
return b;
}