在这里寻求帮助
有人知道如何将欧几里德算法的递归版本(找到最大公约数GCD)转换成使用堆栈的版本吗
以下是欧几里德算法的递归版本:
def euclid_gcd(a, b):
if a == 0:
return b
return gcd(b%a, a)
现在,我有一个开始代码可以转换为欧几里德算法的堆栈版本:
def euclid_gcd_stack(a, b):
s = Stack()
s.push(a)
s.push(b)
while s.count() > 0:
b = s.pop()
a = s.pop()
<code to be continued here>
先谢谢你!:)
相关问题 更多 >
编程相关推荐