資料結構和演算法(二)

2021-10-25 22:14:09 字數 642 閱讀 6724

基本思想:後進先出(先進後出)即棧中元素被處理時,按後進先出的順序進行,棧又叫後進先出表(lifo)。

舉例:日常生活中有很多棧的例子。例如,放在書桌上的一摞書,只能從書頂上拿走一本書,書也只能放在頂上。

對於棧來說,入棧,出棧,棧是否為空,棧頂。等方法。

使用陣列來模擬棧的操作的**:

public

class

stacktest01 }

else}}

//建立乙個stack這樣的乙個類

class

stackt

//入棧的方法

public

void

push

(int number)

//入棧之前要進行判斷棧是否為滿棧

public

boolean

isfull()

//先進行判斷棧是否為空棧 ,如果為空棧,就不需要出棧,不為空才出棧

public

boolean

isempty()

//出棧操作

public

intpop()

// 取的這是棧頂

public

intpeek()

}

資料結構和演算法 二

public static void main string args throws exception objects temp objects size value size 修改 public void set int index,object value throws exception o...

資料結構和演算法(二)

作業分析講解 1.補充單鏈表的銷毀 釋放每個節點的堆空間 單鏈表的基本操作 初始化尾插和中間插入 列印刪除 有兩種常用的思路 思路一 只用乙個指標搞定 刪除得不徹底 思路二 用兩個指標一前一後配合,搞定 推薦 練習 1.完善刪除的 判斷刪除的節點不存在的情況 2.利用剛才講的刪除思路,實現單鏈表的銷...

資料結構演算法(二)

單調棧給定乙個長度為 n 的整數數列,輸出每個數左邊第乙個比它小的數,如果不存在則輸出 1。輸入格式 第一行包含整數 n,表示數列長度。第二行包含 n 個整數,表示整數數列。輸出格式 共一行,包含 n 個整數,其中第 i 個數表示第 i 個數的左邊第乙個比它小的數,如果不存在則輸出 1。資料範圍 1...