首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >deques是可遍历的数据结构吗?

问deques是可遍历的数据结构吗?
EN

Stack Overflow用户
提问于 2014-10-21 13:26:49
回答 3查看 613关注 0票数 0

双端队列是可遍历的数据结构吗?它们是基于数组的实现还是链接实现,有区别吗?

EN

回答 3

Stack Overflow用户

发布于 2014-10-21 13:43:15

是的,deque是可遍历的数据结构,你可以从deque中获取interator来进行遍历。在功能上,它没有什么不同。但是,在技术和数据结构方面,这是有意义的。记住,当我们使用list时,我们可以动态添加节点。但是,当使用数组时,我们需要定义deque的大小或使用默认大小。现在,如果你插入另一个元素,那么它将创建两倍大小的新数组,并将旧数组复制到新数组中,然后插入新元素。

票数 0
EN

Stack Overflow用户

发布于 2014-10-21 13:58:46

是的,它们是可遍历的。特别是在JAVA Deque API中,您总是可以让迭代器(或) descendingIterator分别从第一个到最后一个(或从最后一个到第一个)遍历Deque。

对于仅遍历Deque的情况,底层实现可能没有太大区别。但对于其他操作,它是这样做的。人们通常更喜欢ArrayDeque而不是LinkedList。有关这方面的更多信息,请参阅线程Why is ArrayDeque better than LinkedList。

还要查看相应的JAVA API,以了解这两种不同实现之间的主要区别。

票数 0
EN

Stack Overflow用户

发布于 2017-10-17 10:49:25

不是的。就像它是混合结构(即堆栈和队列)一样,双队列(或双端队列)不是被设计为可遍历的。事实上,它们是专门设计成不可遍历的。如果特定应用程序需要遍历其中包含的项的能力,那么出队可能不是在这种情况下使用的最佳数据结构。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26479448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档