优雅函数实现---最大公约数

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/suo082407128/article/details/101518169

题目:求两个正整数的最大公约数

实现:

  • java
    public staitc int gcd(int a,int b){
      	if(b==0)
       		return a;
        return gcd(b,a%b);
     }
    
  • js
    let gcd=function(a,b){
        if(b==0)
            return a
        return gcd(b,a%b)
    }
    
  • python
    def gcd(a,b):
        if b==0:
           return a
        return gcd(b,a%b)
    

原理浅析:

  • a,b最大公约数 等价于 a/b的余数和b的最大公约数
  • 这样就形成了递归,递归结束条件:余数为0

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/suo082407128/article/details/101518169