计算最大公约数
计算最大公约数
穷举法
穷举范围: t=min(a,b)
从t开始逐次减1,并进行检验 第一个满足条件即可
辗转相除法 (欧几里得法)
do{ //计算a,b的最大公约数 r=a%b; a=b; b=r; }while(r!=0);
更相损减法
int gcd(int a,int b) { if(a==b) return a; else if(a>b) return gcd(a-b,b); else return gcd(a,b-a); } int gcd(int a,int b) { while(a!=b) { if(a==b) return a; if(a>b) a=a-b; else b=b-a; } }
n位逆序数
void reverse(int n) { while(n!=0) { printf("%d",n%10); n /= 10; } printf("\n"); } //改进:引入动态局部变量 void reverse(int n) { int a; int sum=0; while(n!=0) { a=n%10 //printf("%d",n%10); sum=sum*10+a; n /= 10; } //printf("\n"); return sum; }
相关推荐
aqua0 2019-06-28
zhbbupt 2016-12-31
AKATheIronHead 2018-11-23
yxqfxd 2018-07-27
littie 2018-05-21
CorrectForm 2018-05-21
humothetrader 2018-04-04
Albertycl 2018-04-04
yhguo00 2015-08-20
pythoncream 2018-09-27
PHP100 2019-03-28
PHP100 2019-03-28