字符串的最大公因子-LeetCode
2.更相减损法-传送门https://baike.baidu.com/item/%E6%9B%B4%E7%9B%B8%E5%87%8F%E6%8D%9F%E6%9C%AF/449183?fr=aladdin
int gcd(int a,int b){//辗转相除法
int x;
x=a%b;
while (x!=0){
a=b;
b=x;
x=a%b;
}
return b;
}
int gcd_1(int a,int b){//更相减损法
int cnt=0;
int x,tmp;
if(a==b) return a;
while(a%2==0&&b%2==0){
a/=2;
b/=2;
cnt++;
}
do{
if(a<b){
tmp=b;
b=a;
a=tmp;
}
x=a-b;
a=b;
b=x;
}while(a!=x);
return a*pow(2,cnt);
}
脚踏实地,注重基础。
浙公网安备 33010602011771号