python–递归
例子:
1.阶乘函数
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
print(factorial(5))
分析:
为了计算factorial(n)共执行了n+1次函数调用。阶乘的每次调用执行了一个常数级别的运算。得出结论:计算factornial(n)的操作总次数为O(n),因为有n+1次函数的调用,所以每次调用占的操作次数为O(n)
2.绘制英式标尺
我们表示刻度的长度并且指定一个英寸作为主刻度线的长度,在整个英寸刻度之间,标尺包含一系列较小的刻度线。
#create English ruler
#Draw one line with given tick length(followed by optional label)
def draw_line(tick_length,tick_label=""):
line = "-&