496. Next Greater Element I
2018-01-04 20:34
274 查看
vector<int> nextGreaterElement(vector<int>& findNums, vector<int>& nums) { vector<int> res; int pos; for(int i=0;i<findNums.size();i++){ for(int j=0;j<nums.size();j++){ if(findNums[i]==nums[j]){ pos=j; break; } } int k=pos+1; for(;k<nums.size();k++){ if(nums[k]>nums[pos]) { res.push_back(nums[k]); break; } } if(k==nums.size()) res.push_back(-1); } return res; }
可用哈希表存储nums值和索引,通过值得出索引值,在从索引值后出开始查找。
vector<int> nextGreaterElement(vector<int>& findNums, vector<int>& nums) { unordered_map<int,int> m; vector<int> res; for(int i=0;i<nums.size();i++) m[nums[i]]=i; for(int i=0;i<findNums.size();i++) { int pos=m[findNums[i]]; int j=pos+1; for(;j<nums.size();j++){ if(nums[j]>nums[pos]) { res.push_back(nums[j]); break; } } if(j==nums.size()) res.push_back(-1); } return res; }
相关文章推荐
- Leetcode算法学习日志-496 Next Greater Element
- 496. Next Greater Element I
- leetcode[496]:Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I LeetCode
- 496. Next Greater Element I
- [LeetCode] 496. Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- leetcode_496 Next Greater Element I
- leetcode 496 Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- 【LeetCode】496 Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I
- 496. Next Greater Element I