LeetCode:496. 下一个更大元素 I

class Solution {

public:

vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) {

vector<int>greater=nextGreaterElement(nums2);

unordered_map<int,int>greaterMap;

for(int i=0;i<nums2.size();i++){

greaterMap[nums2[i]]=greater[i];

}

vector<int>res(nums1.size());

for(int i=0;i<nums1.size();i++){

res[i]=greaterMap[nums1[i]];

}

return res;

}

vector<int> nextGreaterElement(vector<int>& nums){

int n=nums.size();

vector<int>res(n);

stack<int> s;

for(int i=n-1;i>=0;i--){

while(!s.empty()&&s.top()<=nums[i]){

s.pop();

}

res[i]=s.empty()?-1:s.top();

s.push(nums[i]);

}

return res;

}

};

相关推荐
TrueFurina(互关互赞)几秒前
7-4 区间水仙花数 Python程序设计-MJU实验四(编程入门•多代码实现•测试均通过)
数据结构·算法·飞书·创业创新·学习方法·远程工作·改行学it
Amnesia0_01 分钟前
Map和Set
算法
受伤的僵尸2 分钟前
算法类复习(1)-非自注意力机制(图像处理中的注意力)
人工智能·算法
晨非辰4 分钟前
基于Win32 API控制台的贪吃蛇游戏:从设计到C语言实现详解
c语言·c++·人工智能·后端·python·深度学习·游戏
_w_z_j_5 分钟前
最小高度树
算法
小此方9 分钟前
Re: ゼロから学ぶ C++ 入門(六)类和对象·第三篇:运算符重载
开发语言·c++·后端
2301_789015629 分钟前
每日精讲:环形链表、两个数组中的交集、随机链表的复制
c语言·数据结构·c++·算法·leetcode·链表·排序算法
CodeByV12 分钟前
【算法题】滑动窗口 (二)
算法
旧梦吟16 分钟前
脚本网页 linux内核源码讲解
linux·前端·stm32·算法·html5
2301_789015621 小时前
C++:二叉搜索树
c语言·开发语言·数据结构·c++·算法·排序算法