问题描述
- 堆栈和queue集合的关系
-
如题,java集合里面提到了list,queue等接口,但是没提到堆栈,不是数据结构么。
另外,queue的原理是先进先出,和heap堆一样的性质。想问下堆栈和集合架构什么关系,
解决方案
谁说没有堆栈的?java.util.Stack不是么
http://blog.csdn.net/a19881029/article/details/9408649
解决方案二:
追问:集合架构方面几个接口是list,queue,sort等。并没有提到常说的堆栈,数据结构书上说stack就是一种先进后出的特殊list,而queue又有先进后出的特性和heap一样。似乎heap被称作优先队列。这几个概念的关系是不是heap是一种特殊的queue,queue和stack都是一种特殊的list
解决方案三:
其实你自己说的也挺清楚了,我帮你补充下:集合的最高接口Collection,之下有两个子接口分别是List和set,队列Queue接口之下有子接口Deque即双端队列,用于实现栈的需求,堆栈在Java中也就没有单独提供接口了;有一个实现类LinkedList既实现了List,又实现了双端队列Deque,这就造成了他们之间的联系如你所说的现象,队列是特殊的集合,堆栈也是特殊的集合;也就这么多了,多的也不会了,希望对你有用!
时间: 2024-09-18 13:18:07