Open In App

Python Program for Extended Euclidean algorithms

Last Updated : 21 Jun, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Python3




# Python program to demonstrate working of extended
# Euclidean Algorithm
     
# function for extended Euclidean Algorithm
def gcdExtended(a, b):
    # Base Case
    if a == 0 :
        return b,0,1
             
    gcd,x1,y1 = gcdExtended(b%a, a)
     
    # Update x and y using results of recursive
    # call
    x = y1 - (b//a) * x1
    y = x1
     
    return gcd,x,y
     
 
# Driver code
a, b = 35,15
g, x, y = gcdExtended(a, b)
print("gcd(", a , "," , b, ") = ", g)


Output:

gcd(35, 15) = 5

Time Complexity: O(log(max(A, B)))

Auxiliary Space: O(log(max(A, B))), keeping recursion stack in mind.

Please refer complete article on Basic and Extended Euclidean algorithms for more details!


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads