- 剑指offer2 地址
- 队列是尾部进入,头部做删除,对应了题目的俩func
- abc 入,队头就是a,
- 栈是先入后出,cba入,那么栈顶就是a
- 所以要删除队头a,a 如果先入栈1,那么再栈底,没有办法删掉。
- 那么,把栈1数据转移到栈2, 最先压入栈1的a,出栈1,放入栈2,之后,就变为栈2的顶了。
- 所以出栈就是从栈1 转移到栈2后,出栈。
- 如果栈2,没有,并且栈1 也没有这时候返回-1
- 如果栈2 没有,栈1有,那么从栈1做转移。
- 这个时候,栈1要全部转移到栈2, 才能找到自己的队列头的第一个元素,出现再栈2的顶部。
- 刷题地址
【C++】剑指offer:两个栈实现队列
于 2022-05-14 01:16:28 首次发布