Discuss / Python / 再简单的代码也要亲手巧一遍

再简单的代码也要亲手巧一遍

Topic source

翁岚敏

#1 Created at ... [Delete] [Delete and Lock User]

问题

尾递归优化为什么不支持 是不是没有必要性

练习

-- coding:utf-8 --

def move(n,a,b,c): if n<0: print('please input more than 1') if n == 1: print('%s -> %s'%(a,c)) if n >= 2: move(n-1,a,c,b) print('%s -> %s'%(a,c)) move(n-1,b,a,c)

move(3,'A','B','C')

recur.py

!/usr/bin/env python3

-- coding:utf-8 --

N!=123*.....N

def fact(n): if n == 1: return 1 return n*fact(n-1)

print('fact(1) =', fact(1)) print('fact(5) =', fact(5)) print('fact(10) =', fact(10))

HANOI

def move(n,a,b,c): if n ==1: print('move ',a,'-->',c) return move(n-1,a,c,b) print('move',a,'-->',c) move(n-1,b,a,c)

move(4,"A","B","C")


  • 1

Reply