1 Queue队列

队列是常用的数据结构,可以将队列看成特殊的线性表,队列限制了对线性表的访问方式:只能从线性表的一端添加(offer)元素,从另一端取出(poll)元素。
队列遵循先进先出(FIFO First Input First Output)的原则。
JDK中提供了Queue接口,同时使得LinkedList实现了该接口(选择LinkedList实现Queue的原因在于Queue经常要进行添加和删除的操作,而LinkedList在这方面效率较高)。
Queue接口中主要方法如下:

队列和栈
队列和栈

2 Deque双端队列

Deque是Queue的子接口,定义了所谓“双端队列”即从队列的两端分别可以入队(offer)和出队(poll),LinkedList实现了该接口。

栈遵循先进后出(FILO First Input Last Output)的原则。

队列和栈队列和栈

3 栈

如果将Deque限制为只能从一端入队和出队,则可实现“栈”(Stack)的数据结构,对于栈而言,入栈称之为push,出栈称之为pop。

相关文章:

猜你喜欢
  • 2022-03-03
  • 2021-07-18
  • 2021-08-23
  • 2021-05-03
相关资源
相似解决方案