首先建立一个stack用来存需要运算的数字
for loop整个tokens
当token[i]为运算符号时,把之前stack中的数字分别村为num1和num2 并且pop出去
针对不同的运算情况进行运算 并把结果放回到stack中
答案是所有运算结束后stack的top;
需要记录点有:
1.队列中在放入的时候,如果说后放入的值要大于front的值,会直接把front值pop出去,直到最大值变成front,这样相当于维护了最大值
2.在pop时,只有当value= front时才会pop出去,这样pop出去的就是最大值,可以记录
*二周目重点题目*
利用了小顶堆去实现;只有当后续加入的值大于当前值啥时候才会push 这样pop出堆顶也就是最小值 保证que中维持着题目需要的个数。在最后放到result时,要从后向前放,原因是小顶堆一直是pop小的topk要从大到小