一行代码求两个数的最大公约数

思路

  • 辗转相除法:如果 q 和 r 分别是 m 除以 n 的商和余数,即m = nq + r,那么 m 和 n 的最大公约数等于 n 和 r 的最大公约数

代码实现

public int gcd(int m, int n){
  return n == 0 ? m : gcd(n, m % n);
}
posted @ 2021-08-12 14:48  Cedrus  阅读(58)  评论(0)    收藏  举报