Next Greater Element I LeetCode solution in Java
1class Solution {2public int[] nextGreaterElement(int[] nums1, int[] nums2) {3HashMap<Integer, Integer> map = new HashMap<>();4Stack<Integer> stack = new Stack<>();5int[] ans = new int[nums1.length];6for (int i = 0; i < nums2.length; i++) {7while (!stack.isEmpty() && nums2[i] > stack.peek()) {8int temp = stack.pop();9map.put(temp, nums2[i]);10}11stack.push(nums2[i]);12}13for (int i = 0; i < nums1.length; i++) {14ans[i] = map.getOrDefault(nums1[i], -1);15}16return ans;17}18}