def rvs(s):
if s== "":
return s #递归激励
else:
return rvs(s[1:])+s[0] #递归链条
print(rvs("123456"))
斐波那数列:
def f(n):
if n == 1 or n == 2 :
return 1
else:
return f(n-1)+f(n-2)
print(f(10))
汉诺塔:
count = 0
def hanoi(n,src,dst,mid):
global count
if n == 1:
print("{}:{}->{}".format(1,src,dst))
count +=1
else:
hanoi(n-1,src,mid,dst)
print("{}:{}->{}".format(n,src,dst))
count +=1
hanoi(n-1,mid,dst,src)
hanoi(3,'A','C','B')
print(count)
输出:
1:A->C
2:A->B
1:C->B
3:A->C
1:B->A
2:B->C
1:A->C
7