代码随想录冲冲冲 Day11 栈与队列part02

150. 逆波兰表达式求值

首先建立一个stack用来存需要运算的数字

for loop整个tokens

当token[i]为运算符号时,把之前stack中的数字分别村为num1和num2 并且pop出去

针对不同的运算情况进行运算 并把结果放回到stack中

答案是所有运算结束后stack的top;

239. 滑动窗口最大值

需要记录点有:

1.队列中在放入的时候,如果说后放入的值要大于front的值,会直接把front值pop出去,直到最大值变成front,这样相当于维护了最大值

2.在pop时,只有当value= front时才会pop出去,这样pop出去的就是最大值,可以记录

*二周目重点题目*

347. 前 K 个高频元素

利用了小顶堆去实现;只有当后续加入的值大于当前值啥时候才会push 这样pop出堆顶也就是最小值 保证que中维持着题目需要的个数。在最后放到result时,要从后向前放,原因是小顶堆一直是pop小的topk要从大到小

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值