【学习总结】整数的基本性质与运用

一、最大公约数

定义

一个既能整除 a 又能整除 b 的最大整数。

应用

1540最大公约数.

求法一:暴力枚举

起始条件:最大公约数肯定不大于Math.min(A,B),循环的起始条件(i=a)很容易确定。
判断条件:相信理解最大公约数定义也不难确定(a%i==0 && b%i==0)

public class Main {
  public static void gcd0() {
    int a = 15, b = 40;
    for(int i = a; i >= 1; --i) {
      if(a%i==0 && b%i==0)  { 
        System.out.print(i + "、"); 
        break;      //因为是最大公约数,所以要提前退出循环 --> 5
      }
    }
    System.out.println(gcd(15, 40));
  }

算法大致思路就是,不断地缩减a的值,直到 >= 1

求法二:递归

public static int gcd(int x, int y) {
    return x == 0 ? y : gcd(y%x, x);     //5
}

二、最小公倍数

两个或多个整数公有的倍数叫做它们的公倍数,其中除 0 以外最小的一个公倍数就叫做这几个整数的最小公倍数。

公式:a、b的最小公倍数 == a*b / gcb(a, b)


喜欢的话可以关注一下呢

Hoji的CSDN(在这里随意任性地创作,一首诗、一幅画、一篇文章… 在这里你可以get到但不仅限算法、Spring, SpringBoot等后端技术、MySql,Oracle数据库探索…,其中更不乏各种框架教程、学习方法…)

CSDN博客地址:https://blog.csdn.net/qq_43539599

个人博客:https://www.hoji.site

简书: https://www.jianshu.com/u/2d58d2f776a3

掘金:https://juejin.im/user/5d16f05f6fb9a07ee85c3eb6

发布了300 篇原创文章 · 获赞 48 · 访问量 8070

猜你喜欢

转载自blog.csdn.net/qq_43539599/article/details/103993084