最大公因數輾轉相除法

輾轉相除法是一種用於找出兩個正整數最大公因數的方法。其基本步驟如下:

  1. 輸入兩個正整數a和b。
  2. 計算a和b的餘數,將結果分別賦值給a和b。
  3. 將a和b的值都除以它們的餘數,直到b等於0。
  4. 在每一步中,兩個值中的較小值就是最大公因數。

以下是該方法的Python代碼實現:

def gcd(a, b):
    while b != 0:
        a, b = b, a % b
    return a

使用這個函式,可以找到兩個數的最大公因數。例如,gcd(12, 18)將返回6,因為6是12和18的最大公因數。

輾轉相除法的主要優點是它的時間複雜度為O(log n),這意味著對於較大的數字,它的運行速度較快。然而,這種方法也有一些限制,例如當輸入的兩個數字中有一個是另一個的因子時,這種方法可能無法正確工作。因此,在實際套用中,需要選擇適合具體場景的方法。