給你乙個整數陣列 nums ,和乙個表示限制的整數 limit,請你返回最長連續子陣列的長度,該子陣列中的任意兩個元素之間的絕對差必須小於或者等於 limit 。
如果不存在滿足條件的子陣列,則返回 0 。
示例 1:
輸入:nums = [8,2,4,7], limit = 4
輸出:2
解釋:所有子陣列如下:
[8] 最大絕對差 |8-8| = 0 <= 4.
[8,2] 最大絕對差 |8-2| = 6 > 4.
[8,2,4] 最大絕對差 |8-2| = 6 > 4.
[8,2,4,7] 最大絕對差 |8-2| = 6 > 4.
[2] 最大絕對差 |2-2| = 0 <= 4.
[2,4] 最大絕對差 |2-4| = 2 <= 4.
[2,4,7] 最大絕對差 |2-7| = 5 > 4.
[4] 最大絕對差 |4-4| = 0 <= 4.
[4,7] 最大絕對差 |4-7| = 3 <= 4.
[7] 最大絕對差 |7-7| = 0 <= 4.
因此,滿足題意的最長子陣列的長度為 2 。
示例 2:
輸入:nums = [10,1,2,4,7,2], limit = 5
輸出:4
解釋:滿足題意的最長子陣列是 [2,4,7,2],其最大絕對差 |2-7| = 5 <= 5 。
示例 3:
輸入:nums = [4,2,2,2,4,4,2,2], limit = 0
輸出:3
定義乙個二維陣列dp[i][j],陣列中儲存從前到當前節點的最大絕對值,遍歷dp找到滿足條件的最大值。我這種想法寫了也肯定是超時的,而且迴圈也特別多,肯定不是我這種解法。
classsolution
dp[i][j]=math.max(nums[j+1]-nums[j],dp);}}
}}
1438 絕對差不超過限制的最長連續子陣列
絕對差不超過限制的最長連續子陣列 給你乙個整數陣列 nums 和乙個表示限制的整數 limit,請你返回最長連續子陣列的長度,該子陣列中的任意兩個元素之間的絕對差必須小於或者等於 limit 如果不存在滿足條件的子陣列,則返回 0 示例 1 輸入 nums 8,2,4,7 limit 4 輸出 2 ...
1438 絕對差不超過限制的最長連續子陣列
1438.絕對差不超過限制的最長連續子陣列 給你乙個整數陣列nums,和乙個表示限制的整數limit,請你返回最長連續子陣列的長度,該子陣列中的任意兩個元素之間的絕對差必須小於或者等於limit。如果不存在滿足條件的子陣列,則返回0。示例 1 輸入 nums 8,2,4,7 limit 4輸出 2解...
1438 絕對差不超過限制的最長連續子陣列
給你乙個整數陣列 nums 和乙個表示限制的整數 limit,請你返回最長連續子陣列的長度,該子陣列中的任意兩個元素之間的絕對差必須小於或者等於 limit 如果不存在滿足條件的子陣列,則返回 0 import j a.util.deque import j a.util.linkedlist cl...