Java中的queue和deque
2019獨角獸企業重金招聘Python工程師標準>>>
1、Queue
? ? ? 隊列, 一種常用的數據結構,可以將隊列看做是一種特殊的線性表,該結構遵循的先進先出原則。Java中,LinkedList實現了Queue接口,因為LinkedList進行插入、刪除操作效率較高?
? ? ? 相關方法:?
? ? ? boolean offer(E e):將元素追加到隊列末尾,若添加成功則返回true。?
? ? ? E poll():從隊首刪除并返回該元素。?
? ? ? E peek():返回隊首元素,但是不刪除?
? ? ? 示例:
運行結果:?
[one, two, three, four]?
one?
[two, three, four]?
two?
[two, three, four]?
two?
three?
four
2、Deque
? ? ? ?雙向隊列,指該隊列兩端的元素既能入隊(offer)也能出隊(poll),如果將Deque限制為只能從一端入隊和出隊,則可實現棧的數據結構。對于棧而言,有入棧(push)和出棧(pop),遵循先進后出原則
? ? ? 常用方法如下:?
? ? ? void push(E e):將給定元素”壓入”棧中。存入的元素會在棧首。即:棧的第一個元素?
? ? ? E pop():將棧首元素刪除并返回。?
? ? ? 示例:
運行結果:?
[c, b, a]?
c?
[c, b, a]?
c?
b?
a?
[]
轉載于:https://my.oschina.net/u/3496297/blog/1618891
總結
以上是生活随笔為你收集整理的Java中的queue和deque的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java网络编程之Socket编程
- 下一篇: 操作系统的发展史