【发布时间】:2021-07-13 04:49:06
【问题描述】:
我尝试不使用递归方法解决这个问题
def findLongest():
nums=[1, 9, 3, 10, 4, 20, 2]
f = c = lastMax = p1 = 0
while (p1 < len(nums) - 1):
p2 = p1 + 1
while (p2 < len(nums) - 1):
if nums[p2] > nums[p1]:
c += 1
if f == 0:
f = 1
p1 = p2
p2 += 1
if c > lastMax:
lastMax = c
f = 0
c = 0
p1 += 1
return lastMax
我已经在网上搜索了很多,以找到一种很好且易于理解的递归方法。
【问题讨论】:
-
您是否要查找列表中按递增顺序排列的最长序列的长度?您的代码产生 3,而正确答案是 2。
-
是的,这就是我想要做的
标签: python recursion dynamic-programming