一、232.用栈实现队列
使用两个栈来实现队列,一个输入栈,一个输出栈,
栈的先入后出特性,使得两个栈能够实现先入先出。
只有在弹出操作时,需要检测输出栈有无数据,若有,输出栈头即是需要弹出的队尾数据。
若无,则需要从输入栈导入数据至输出栈。

二、225. 用队列实现栈
使用que1来存储栈数据,que2用来备份。
pop操作和题一不同,需要先将尾部以外的数据转移到que2中备份,之后弹出队尾数据,即为栈顶数据。

三、20. 有效的括号
虽然思路很有逻辑,但是第二遍写这个题不一定能写出来,需要回顾

三、1047. 删除字符串中的所有相邻重复项
主要注意点:
字符串输入内容方式:
string result = "";
result += sth;
以及栈内容赋给字符串,因为栈先入先出的特性,需要给赋值后的字符串内容反转。

算法训练营第十天:栈与队列的实现及应用

被折叠的 条评论
为什么被折叠?



