JS中利用gcd算法实现 字符串的最大公因子

 gcd算法其实就是著名的欧几里德算法,大家感觉是不是很高大上呢,没那么可怕啦,大家应该都学过,

其实就是一个求两个正整数最大公约数的算法,即辗转相除法。

 最重要的等式莫过于(核心中的核心):

        gcd(a,b) = gcd(b,a mod b) (不妨设a>b 且r=a mod b ,r不为0) a mod b就是a 除以 b取余

int gcd(int a,int b)//求最大公约数

{

      return b==0?a:gcd(b,a%b);

}

这就行了? 对,这就可以实现求最大公约数了,仔细看看这个代码,其实原理是一样的,就是辗转相除,只不过以另外一种递归的形式出现在大家面前,也更便于大家的记忆,当然也是省去了代码量。 

     

JS中利用gcd算法实现 字符串的最大公因子_第1张图片

你可能感兴趣的:(javascript,前端,leetcode,js实现字符串的最大公因子)