在 Python 中改变方向
假设我们有一个名为 nums 的数字列表,我们需要找出列表从正斜率变为负斜率或负斜率变为正斜率的次数。
因此,如果输入类似 [2, 4, 10, 18, 6, 11, 13],则输出将为 2,因为它在 10 处发生了改变(正变负),然后在 6 处发生了改变(负变正)。
要解决此问题,我们将按照以下步骤进行 -
要解决此问题,我们将按照以下步骤进行 -
范围 1 到 nums 的大小 - 1,do
如果 nums[i-1] < nums[i] > nums[i+1] 或 nums[i-1] > nums[i] < nums[i+1],则
count := count + 1
返回 count
让我们看看以下实现以获得更好的理解 -
示例
class Solution: def solve(self, nums): count = 0 for i in range(1, len(nums) - 1): if nums[i - 1] < nums[i] > nums[i + 1] or nums[i - 1] > nums[i] < nums[i + 1]: count += 1 return count ob = Solution() print(ob.solve([2, 4, 10, 18, 6, 11, 13]))
输入
[2, 4, 10, 18, 6, 11, 13]
输出
2
广告