zah*_*var 1 python recursion max python-2.7 python-3.x
我会编写一个递归函数,它将数字列表作为参数并返回列表的最大元素。我不想使用max()函数。
a = [2,1,3,5]
def f(a, m=0):
if m<a[0]:
m = a[0]
if len(a) == 1:
return m
else:
f(a[1:])
print(f(a))
Run Code Online (Sandbox Code Playgroud)
但它回来了None!我该如何解决?
您应该m在您的else语句中定义并return在其中添加一个:
a = [2,1,3,5]
def f(a, m=0):
if m<a[0]:
m = a[0]
if len(a) == 1:
return m
else:
m = f(a[1:], m)
return m
print(f(a))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35 次 |
| 最近记录: |