diff --git a/Stack/496.Next-Greater-Element-I/496.Next Greater Element I.cpp b/Stack/496.Next-Greater-Element-I/496.Next Greater Element I.cpp deleted file mode 100644 index b976c0380..000000000 --- a/Stack/496.Next-Greater-Element-I/496.Next Greater Element I.cpp +++ /dev/null @@ -1,29 +0,0 @@ -class Solution { -public: - vector nextGreaterElement(vector& findNums, vector& nums) - { - stackStack; - unordered_mapMap; - - for (int i=0; iresults; - for (int i=0; inextGreater; +public: + vector nextGreaterElement(vector& nums1, vector& nums2) + { + int n = nums2.size(); + stackStack; // index + for (int i = 0; i < n; i++) + { + while (!Stack.empty() && nums2[Stack.top()] < nums2[i]) + { + nextGreater[nums2[Stack.top()]] = nums2[i]; + Stack.pop(); + } + Stack.push(i); + } + + vectorrets; + for (int x: nums1) + { + if (nextGreater.find(x)==nextGreater.end()) + rets.push_back(-1); + else + rets.push_back(nextGreater[x]); + } + return rets; + } +};