遞迴函式最大公因數

遞歸函式求最大公因數的方法通常基於輾轉相除法(Euclidean algorithm),它是一種經典的求最大公因數的方法。以下是一個使用遞歸實現的 Python 代碼示例:

def gcd_recursive(a, b):
    if b == 0:
        return a
    else:
        return gcd_recursive(b, a % b)

這個函式接收兩個參數,ab,分別表示兩個需要求最大公因數的數。如果 b 為 0,那麼 a 就是最大公因數。否則,函式會遞歸調用自身,將 bab 取模的結果作為新的參數傳入。

注意,這個遞歸實現只適用於較小的數對,對於非常大的數對,遞歸可能會導致棧溢出。在實際套用中,通常會使用更高效的算法,如 Pollard's rho 算法或更複雜的數學方法。