アルゴリズム:計算二つの整数ユークリッドの互除法の最大公約数。
アルゴリズムのフロー・チャート:
アルゴリズムのJava実装:
//非递归实现
public static int gcd(int a, int b) {
if( a < b ) {
int t = a;
a = b;
b = t;
}
while( b != 0 ) {
int r = a % b;
a = b;
b = r;
}
return a;
}
//递归实现
public static int gcd(int a, int b) {
if( b == 0) {
return a;
}else {
return gcd(b, a%b);
}
}