该程序查找通过使用Python多次在股票市场上购买可获得的最大利润

假设我们有一个按时间顺序表示公司股票价格的价格列表,我们必须找到通过多次买卖该股票可以赚取的最大利润。我们必须记住,我们必须先购买才可以出售。

因此,如果输入就像价格= [10、50、30、40、60],那么输出将是70,因为我们可以在10买,在50卖,在30买,然后在60卖。

为了解决这个问题,我们将遵循以下步骤-

  • prev_price:=无限

  • 利润:= 0

  • 对于价格中的每个p,

    • 利润:=利润+ p-prev_price

    • 如果p> prev_price,则

    • prev_price:= p

    • 回报利润

    让我们看下面的实现以更好地理解-

    示例

    class Solution:

       def solve(self, prices):

          prev_price = float("inf")

          profit = 0

          for p in prices:

             if p > prev_price:

                profit += p - prev_price

                prev_price = p

          return profit

    ob = Solution()print(ob.solve([10, 50, 30, 40, 60]))

    输入值

    [10, 50, 30, 40, 60]

    输出结果

    70

    以上是 该程序查找通过使用Python多次在股票市场上购买可获得的最大利润 的全部内容, 来源链接: utcz.com/z/330193.html

    回到顶部