棧佇列
特點後進先出
先進先出
定義stackstack = new stack()
queuequeue = new linkedlist()
入s.push()
q.offer()
出s.pop() 同時返回棧頂元素
q.poll() 同時返回隊頭元素
頂s.peek()
q.peek() 佇列頭部元素
注意:在佇列中:add()和remove()方法在失敗(例如出界)的時候會丟擲異常,需要人工手動處理,而offer,pool方法直接返回false,不需要人工手動處理,因此推薦採取offer,pool方法
典型應用:用兩個棧實現佇列,stack1用來做push操作,stack2用來做pop操作
棧和佇列總結
使用標準庫的棧 include 標頭檔案 stacks 定義乙個 int 型的棧 s.empty 如果棧為空返回true,否則返回false s.size 返回棧中元素的個數 s.pop 刪除棧頂元素但不返回其值 s.top 返回棧頂的元素,但不刪除該元素 s.push 在棧頂壓入新元素 使用標準庫...
棧和佇列總結
棧繼承自vector,stack只有乙個空參構造方法,因此想往其中新增元素只能使用方法push 常用方法如下 public e push e item 入棧 public e pop 出棧 public e peek 檢視棧頂元素 public boolean empty 是否為空 注意在使用棧時,...
棧和佇列總結
佇列 只允許在一端進行插入資料操作,在另一端進行刪除資料操作的特殊線性表,佇列具有先進先出fifo first in first out 入佇列 進行插入操作的一端稱為隊尾 tail rear 出佇列 進行刪除操作的一端稱為隊頭。棧 一種特殊的線性表,其只允許在固定的一端進行插入和刪除元素操作。進行...