摘要: 记a、b的最大公约数为gcd(a,b)。这里对于最大公约数的讨论仅限于非负整数,因为显然有gcd(a,b)=gcd(|a|,|b|)。计算最大公约数的Euclid算法基于下面定理:【GCD递归定理】对于任意非负整数a和任意正整数b,gcd(a,b)=gcd(b,a%b)。Euclid算法最简单的递归版本(C语言版)如下:1 int Euclid(int a,int b)2 {3 if(b)return Euclid(b,b%a);else return a;4 }迭代版本(C语言版)如下:1 int Euclid(int a,int b)2 {3 while(a=a%b)a^=... 阅读全文
posted @ 2012-01-17 16:31 狼の禅 阅读(1842) 评论(2) 推荐(3) 编辑
我要啦免费统计