3423. 循环数组中相邻元素的最大差值
题目描述
给你一个 循环 数组 nums
,请你找出相邻元素之间的 最大 绝对差值。
注意:一个循环数组中,第一个元素和最后一个元素是相邻的。
示例 1:
输入:nums = [1,2,4]
输出:3
解释:
由于 nums
是循环的,nums[0]
和 nums[2]
是相邻的,它们之间的绝对差值是最大值 |4 - 1| = 3
。
示例 2:
输入:nums = [-5,-10,-5]
输出:5
解释:
相邻元素 nums[0]
和 nums[1]
之间的绝对差值为最大值 |-5 - (-10)| = 5
。
提示:
2 <= nums.length <= 100
-100 <= nums[i] <= 100
解法
方法一:模拟
我们遍历数组 $\textit{nums}$,计算相邻元素之间的绝对差值,并维护最大的绝对差值,最后与首尾元素之间的绝对差值比较,取最大值即可。
时间复杂度 $O(n)$,其中 $n$ 为数组 $\textit{nums}$ 的长度。空间复杂度 $O(1)$。
1 2 3 |
|
1 2 3 4 5 6 7 8 9 10 |
|
1 2 3 4 5 6 7 8 9 10 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
1 2 3 4 5 6 7 8 |
|