刷题Day5-栈与队列
232. 用栈实现队列
一个栈用于存入,另一个栈用于弹出。
225. 用队列实现栈
两个队列没有主次之分,需要放入的时候放到有对象的队列,需要弹出的时候将对象从有对象的队列放到没对象的队列中,返回最后一个对象即可。
20. 有效的括号
典型的用栈解决的问题,括号问题基本上都是栈解决。
需要注意边界条件,注意栈的size问题,遇到右括号的时候栈是否还有对象可以取出,最后是否还剩余没有取出来的左括号。
1047. 删除字符串中的所有相邻重复项
这个题挺有意思的,消消乐。遇到相同的消除,本质上使用一个栈,每次存之前看看栈顶是否有相同的,如果相同,弹栈
150. 逆波兰表达式求值
逆波兰表达式,又是经典的栈问题
347. 前 K 个高频元素
优先队列的使用,根据出现次数进行比较
刷题五天,第一个困难题
这个题的思路比较清晰明确,使用优先队列维护当前记录中的最大值
同时使用map记录当前区间内的数
如果优先队列的最大值已经不在当前map记录的数内了,则删除优先队列的第一个值,继续循环执行。

浙公网安备 33010602011771号