0

是否可以使用 ArrayLists 在 Java 中同时编写队列和单独的堆栈实现?

我的任务是编写一个队列和一个堆栈作为数组列表,并且我不允许使用队列和堆栈的 Java 实现或我之前帖子中人们指出的定义的类,即我必须编写自己的方法。

我已经看到了使用数组完成此操作的示例,即给出堆栈和队列的数组实现。我想做同样的事情,但这次使用 ArrayList。

有没有人使用 Arraylist 数据类型实现队列和堆栈?还有我需要注意的问题。如果您能指出一些例子,我将不胜感激。

4

2 回答 2

0

还有我需要注意的问题

主要问题是解释为什么当您有许多内置实现来执行这些操作时,您为什么要开发自己的堆栈和队列。

您将遇到的另一个问题是,虽然可以使用 ArrayList 有效地实现 Stack,但 LinkedList 是 Queue 的更好选择。

我不知道我正在学习的java

我会尝试专注于可能有用的事情。Java 及其库是一个庞大的主题,您必须确定您必须知道什么以及如果您需要知道什么可以查找。

我建议你看看这个网站至少对所有这些产品有一个想法。http://java-source.net/

于 2012-04-20T13:56:09.997 回答
0

正如 spidey 评论的那样,List 的 add 和 remove 方法,以及它们的动态特性,使得实现 Stacks 和 Queues 变得特别容易。由于 ArrayList 和 LinkedList 都是 Lists,因此它们都可以用作 Stack 或 Queue 的基础。这将是一个很好的思考练习,以区分为什么每个构造可能会或可能不会比另一个更好。

于 2012-04-20T13:56:47.890 回答