代码随想录day11 用栈实现队列 | 用队列实现栈 | 有效的括号 | 删除字符串中的所有相邻重复项

用栈实现队列

用栈实现队列

解题思路

用两个堆栈来实现,一个栈用于存储新存进来的,一个栈用于输出结果当队列

知识点

堆栈

心得

较为简单的一题

用队列实现栈

用队列实现栈

解题思路

只用一个队列,当需要pop的时候,将之前所有存进队列的值先弹出,再push进队尾

知识点

队列

心得

一开始想到这个思路,但是没想到代码怎么写,原因是对C++中Queue使用的不够熟练

有效的括号

有效的括号

解题思路

遍历整个字符串,如果遇到左括号则将右括号存入堆栈,遇到右括号的时候检查堆栈顶部,如果不是与之相配的左括号或者为空,则不有效,反之有效。

知识点

堆栈,字符串

心得

一开始想到用堆栈,但是不知道怎么判断是不是有效。

删除字符串中的所有相邻重复项

删除字符串中的所有相邻重复项

解题思路

存入每个字母,当栈顶的元素和当前字母相等时弹出,最后把堆栈所有的值弹出存入新的字符串

知识点

堆栈,字符串

心得

一开始想到用堆栈,但是不知道怎么判断是不是有效。

posted @ 2024-07-02 02:36  不进育碧不改名  阅读(198)  评论(0编辑  收藏  举报