gpt4 book ai didi

java - 在 Java 中使用栈作为队列

转载 作者:行者123 更新时间:2023-11-30 06:27:42 24 4
gpt4 key购买 nike

我需要以不同的顺序处理一棵树,比方说 BFS 和 DFS。通过使用队列或堆栈,两者都很容易,但是,我缺少 Java 中允许执行类似操作的适当接口(interface)

QueueOrStack<N> pending = ...
while (!pending.isEmpty()) {
N node = pending.poll(); // <----- this is the problem
pending.addAll(node.children());
process(node);
}

没有真正的问题,我可以将 ArrayList 封装到实现 Queue1 的东西中,但是我敢打赌我忽略了一些东西在 Java 集合框架中。还是真的不见了?

__

1 或使用带有 PriorityQueue 的最新优先比较器,这可能是一个愚蠢的想法

最佳答案

有这样一个结构。

它被称为ArrayDeque -> http://docs.oracle.com/javase/6/docs/api/java/util/ArrayDeque.html

关于java - 在 Java 中使用栈作为队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13185009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com