Leetcode 496. 下一個更大元素 I
給定兩個 沒有重複元素 的陣列 nums1 和 nums2 ,其中nums1 是 nums2 的子集。找到 nums1 中每個元素在
nums2 中的下一個比其大的值。nums1 中數字 x 的下一個更大元素是指 x 在 nums2 中對應位置的右邊的第一個比 x 大的元素。如果不存在,對應位置輸出 -1
。
示例 1:
輸入: nums1 = [4,1,2], nums2 = [1,3,4,2].
輸出: [-1,3,-1]
解釋:
對於num1中的數字4,你無法在第二個陣列中找到下一個更大的數字,因此輸出 -1。
對於num1中的數字1,第二個陣列中數字1右邊的下一個較大數字是 3。
對於num1中的數字2,第二個陣列中沒有下一個更大的數字,因此輸出 -1。
示例 2:
輸入: nums1 = [2,4], nums2 = [1,2,3,4].
輸出: [3,-1]
解釋:
對於 num1 中的數字 2 ,第二個陣列中的下一個較大數字是 3 。
對於 num1 中的數字 4 ,第二個陣列中沒有下一個更大的數字,因此輸出 -1 。
class Solution {
public int[] nextGreaterElement(int[] nums1, int[] nums2) {
int[] result = new int[nums1.length];
for (int i = 0; i < nums1.length; i++)
{
if (nums1[i] >= Arrays.stream(nums2).max().getAsInt())
{
result[i] = -1;
}
else
{
int index = search(nums2, nums1[i]);
for (int j = index; j < nums2.length; j++)
{
if (nums2[j] > nums1[i])
{
result[i] = nums2[j];
break;
}
if (j == nums2.length - 1)
{
result[i] = -1;
}
}
}
}
return result;
}
public static int search(int[] num, int e)
{
for (int i = 0; i < num.length; i++)
{
if (num[i] == e)
{
return i;
}
}
return 0;
}
}
相關文章
- LeetCode-496-下一個更大元素 ILeetCode
- LC_496. 下一個更大元素 I
- [Leetcode]下一個更大元素IILeetCode
- 力扣-96. 下一個更大元素 I力扣
- 程式碼隨想錄演算法訓練營第五十三天 | 739.每日溫度 496.下一個更大的元素I 503.下一個更大的元素II演算法
- 程式碼隨想錄day48 || 739, 每日溫度 496, 下一個更大元素 I 503, 下一個更大元素II
- (適合初學者)下一個更大元素
- 503. 下一個更大元素 II(中等)
- CSS下一個兄弟元素CSS
- [連結串列]leetcode1019-連結串列中的下一個更大節點LeetCode
- JavaScript獲取下一個元素JavaScript
- 領釦LintCode演算法問題答案-1206. 下一個更大的數 I演算法
- 下一個排列(LeetCode)LeetCode
- jQuery獲取當前元素的下一個元素jQuery
- CSS 緊鄰下一個兄弟元素CSS
- jQuery獲取當前li元素的下一個元素jQuery
- JavaScript 獲取下一個元素節點JavaScript
- 獲取當前元素下一個元素程式碼例項
- LeetCode31.下一個排列LeetCode
- jQuery查詢下一個緊鄰兄弟元素jQuery
- [LeetCode] Next Permutation 下一個排列LeetCode
- 程式碼隨想錄演算法訓練營第五十九天 | 42. 接雨水,503下一個更大元素演算法
- JavaScript獲取下一個同級元素節點JavaScript
- jQuery獲取當前元素的上一個或者下一個元素程式碼例項jQuery
- LeetCode 31. 下一個排列 | PythonLeetCodePython
- 程式碼隨想錄演算法訓練營第五十九天|● 503.下一個更大元素II ● 42. 接雨水演算法
- 《Cracking the Coding Interview程式設計師面試金典》----下一個元素(下一個比他大的)View程式設計師面試
- Leetcode——347. 前K個高頻元素LeetCode
- javascript實現的獲取下一個li元素程式碼例項JavaScript
- leetcode 658.找到K個最接近的元素 JavaLeetCodeJava
- [LeetCode] Remove Element 移除元素LeetCodeREM
- 59天【程式碼隨想錄演算法訓練營34期】第十章 單調棧part02( ● 503.下一個更大元素II ● 42. 接雨水 )演算法
- jQuery獲取當前元素的下一級子元素程式碼例項jQuery
- LeetCode-215-陣列中的第K個最大元素LeetCode陣列
- 判斷一個元素是否是另一個元素的子元素或者父元素
- LeetCode-116-填充每個節點的下一個右側節點指標LeetCode指標
- LeetCode-117-填充每個節點的下一個右側節點指標 IILeetCode指標
- LeetCode117-填充每個節點的下一個右側節點指標 IILeetCode指標