有可能用stack来完成这个bfs吗

来源:6-10 二分搜索树的层序遍历

慕前端6301706

2019-02-09

很好奇 不知道老师有没有实现过

我自己觉得可能用两个stack可以实现?

写回答

1回答

liuyubobobo

2019-02-09

bfs只能使用Queue来完成。


但是,是可以使用两个stack组合来实现一个queue接口中的所有操作,不过一般除了在面试中,不会有人这么做的:)


Leetcode的232号问题就是用Stack来实现一个Queue接口。https://leetcode.com/problems/implement-queue-using-stacks/

之后就可以用这个Queue来实现BFS了:)


我的232号问题的参考代码(C++):

https://github.com/liuyubobobo/Play-Leetcode/blob/master/0232-Implement-Queue-using-Stacks/cpp-0232/main3.cpp


加油!:)

0
0

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程