2011-07-26 49 views
2

在C++中所有我需要做的就是什么是C++ deque的Java等价物?

#include <queue> -> including 
queue<int> a; -> defining 
a.push(1); ->using 

但在Java中,我发现很难用简单的双端队列 我该怎么办......? 更具体地说, 我应该如何编写代码来简单地执行与我在C++中相同的步骤 ;包括,定义,使用。

更具体地说, 我想制作一个deque,这样我可以 在前端或后端添加任何整数。 并通过双端队列

+1

更合适的标题应该是“C++ deque的Java等效物是什么” –

+0

“你用deque的大小打印整个数字中的整数”是什么意思? – Paul

+0

如果您使用IDE,它将帮助您找到要导入的类以及如何构造代码。免费的IDE包括; IntelliJ CE,Netbeans或Eclipse –

回答

9

Java有两种QueueDeque类型的尺寸打印在deque的整数,和LinkedList,等等,可以作为任何一个:

import java.util.*; 
Deque<Integer> q = new LinkedList<Integer>(); 
q.push(1); 
+0

如何在排队队列中打印整个数字,就像我在队列中添加1,2,3,4一样打印就好像1 2 3 4 – hongtaesuk

+1

这听起来像是作业。你甚至尝试过吗?显示一些代码并指出您遇到问题的位置。 –

+0

我非常感谢你:) – hongtaesuk

-1

java.util.LinkedList

LinkedList<Integer> linkedList = new LinkedList<Integer>(); 
linkedList.add(5); 
linkedList.addFirst(2); // add to front, equivalent to push() 
linkedList.addLast(3); // add to end, equivalent to add() 
7

目前的答案表明,Java的java.util.LinkedList是在Java编译C++的std::deque。尽管LinkedList确实具有与std::deque大致相同的接口,但它不提供std::deque所做的复杂性保证。特别是,std::deque保证O(1)通过索引查找(随机访问),而LinkedListO(n)查找。从这个意义上说(有经验的C++用户意见std::deque),Java的LinkedList完全没有像std::deque(虽然它非常像std::list)。 This thread为“什么是C++ deque的Java等价物”提供了更好的答案。总而言之,标准Java库中没有等价物。

相关问题