棧和佇列總結

2021-09-28 16:46:44 字數 646 閱讀 7103

棧繼承自vector,stack只有乙個空參構造方法,因此想往其中新增元素只能使用方法push(),常用方法如下:

public e push(e item):入棧

public e pop():出棧

public e peek():檢視棧頂元素

public boolean empty():是否為空

注意在使用棧時,當呼叫pop()和peek()方法時,首先要判斷棧是否為空,避免空指標異常。

首先佇列是乙個介面,若想建立佇列物件,則可以使用其實現類linkedlist,如下:

queue

q=new

linkedlist

<

>()

;

常見方法如下:

boolean offer(e e):入隊

e poll():出隊,如果隊列為空時,返回null

e peek():訪問隊頭元素,如果隊列為空時,返回null

boolean isempty() 如果此集合不包含元素,則返回 true 。

棧和佇列總結

使用標準庫的棧 include 標頭檔案 stacks 定義乙個 int 型的棧 s.empty 如果棧為空返回true,否則返回false s.size 返回棧中元素的個數 s.pop 刪除棧頂元素但不返回其值 s.top 返回棧頂的元素,但不刪除該元素 s.push 在棧頂壓入新元素 使用標準庫...

棧和佇列總結

棧佇列 特點後進先出 先進先出 定義stackstack new stack queuequeue new linkedlist 入s.push q.offer 出s.pop 同時返回棧頂元素 q.poll 同時返回隊頭元素 頂s.peek q.peek 佇列頭部元素 注意 在佇列中 add 和re...

棧和佇列總結

佇列 只允許在一端進行插入資料操作,在另一端進行刪除資料操作的特殊線性表,佇列具有先進先出fifo first in first out 入佇列 進行插入操作的一端稱為隊尾 tail rear 出佇列 進行刪除操作的一端稱為隊頭。棧 一種特殊的線性表,其只允許在固定的一端進行插入和刪除元素操作。進行...