欧几里德算法
求两个数的最大公因数,如gcd(50, 15)=5
时间复杂度:O(logn)
unsigned int Gcd(unsigned int M, unsigned int N)
{
unsigned int temp;
//令M>=N
if (M<N)
{
temp = M;
M = N;
N = temp;
}
while(N>0)
{
temp = M % N;
M = N;
N = temp;
}
return M;
}求两个数的最大公因数,如gcd(50, 15)=5
时间复杂度:O(logn)
unsigned int Gcd(unsigned int M, unsigned int N)
{
unsigned int temp;
//令M>=N
if (M<N)
{
temp = M;
M = N;
N = temp;
}
while(N>0)
{
temp = M % N;
M = N;
N = temp;
}
return M;
}