LLU

梦想总是要有的,万一实现了呢?

LeetCode: Stack

Next Greater Element I

这道题还挺复杂的。虽然是easy的难度,结果我研究半天也没研究出来。

看了答案也没理解。。。

最终了解到底为什么不对了。

我一开始的想法:建立一个stack,如果当前的number大于stack.top()就push,小于就pop().

但是其实重点是在于:

1. 建立一个stack,将stack.top()和当前元素比较,如果stack.top() > current, push current. 如果stack.top() < current, 则说明stack.top()这个元素的next greater value is: currrent. Then mark stack.top()'s next greater value is: current. 并且pop。然后再继续比较,知道stack.top() > current, or stack is empty. 最后,将current存入stack。


评论

©LLU | Powered by LOFTER