python - 查找列表中两个整数之间的最大增量

标签 python list

我有一个整数列表,即:

values = [55, 55, 56, 57, 57, 57, 57, 62, 63, 64, 79, 80]

我正在尝试找出两个连续数字之间的最大差异。

在这种情况下,它将是 64->79 中的 15

数字可以是负数或正数,增加或减少或两者兼而有之。重要的是我需要找到两个连续数字之间的最大增量。

最快的方法是什么?这些列表可以包含数百到数千个整数。

这是我现在的代码:

prev_value = values[0]
largest_delta = 0

for value in values:
  delta = value - prev_value
  if delta > largest_delta:
    largest_delta = delta
  prev_value = value

  return largest_delta

有没有更快的方法来做到这一点?这需要一段时间。

最佳答案

max(abs(x - y) for (x, y) in zip(values[1:], values[:-1]))

关于python - 查找列表中两个整数之间的最大增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3428769/

相关文章:

python - 将字符串传递给 SQLalchemy 查询

c#从列表中的字段中获取列表

python - 生成列表的所有有序组合,其中每个组合包括所有项目

python - 有没有办法创建与用户输入一样多的列表?

python - 使用 python 删除列表中的重复条目

python - 有没有办法标记特定的类方法?

python - 当满足特定条件时从列表创建新列表

python - 两个列表元素的PMI

Python - 从字典中分配和更改列表

python - UnboundLocalError 行为不直观的原因 2