-
Notifications
You must be signed in to change notification settings - Fork 60
Expand file tree
/
Copy path0496-next-greater-element-i.js
More file actions
33 lines (32 loc) · 1022 Bytes
/
0496-next-greater-element-i.js
File metadata and controls
33 lines (32 loc) · 1022 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/**
* 496. Next Greater Element I
* https://leetcode.com/problems/next-greater-element-i/
* Difficulty: Easy
*
* The next greater element of some element x in an array is the first greater element
* that is to the right of x in the same array.
*
* You are given two distinct 0-indexed integer arrays nums1 and nums2, where nums1 is
* a subset of nums2.
*
* For each 0 <= i < nums1.length, find the index j such that nums1[i] == nums2[j] and
* determine the next greater element of nums2[j] in nums2. If there is no next greater
* element, then the answer for this query is -1.
*
* Return an array ans of length nums1.length such that ans[i] is the next greater
* element as described above.
*/
/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number[]}
*/
var nextGreaterElement = function(nums1, nums2) {
return nums1.map(n => {
let index = nums2.indexOf(n);
while (nums2[index] <= n) {
index++;
}
return index >= nums2.length ? -1 : nums2[index];
});
};