關於棧和與之相關操作

2021-09-23 05:56:08 字數 659 閱讀 9908

1.棧的概念

特殊的線性結構: 進行操作的地方稱為棧頂(插入/入棧和刪除/出棧)

另一端為棧頂

棧只能有一段進行操作,就像手槍的彈匣一樣,也像腔腸動物哈哈

可以理解成特殊的順序表

2.棧的特性

後進先出(lifo)

3.棧的操作

首先是棧的結構

typedef int datatype;

typedef struct stack stack;

接下來是操作

void stackinit(stack* s) 

void stackpush(stack* s, datetype date)

s->date[s->size] = date;

++s->size;

}void stackpop(stack* s)

--s->size;

}datetype stacktop(stack* s)

return s->date[s->size - 1];

}int stacksize(stack* s)

int stackempty(stack* s)

void stackdestory(stack* s)

棧 關於順序棧和鏈棧建立的相關操作

順序棧 鏈棧ps 如果用想要嘗試下使用棧來解決問題,可以看看這一篇leetcode 有效的括號 問題 1.順序棧 include using namespace std define maxsize 10 定義順序棧 typedef struct stack 初始化棧 void initstack ...

棧的相關操作

c stl棧容器提供了相關操作 include 棧定義 stacks s.empty 如果棧為空返回 true 否則返回 false s.size 返回棧中元素的個數 s.pop 刪除棧頂元素但不返回其值 s.top 返回棧頂的元素,但不刪除該元素 s.push 在棧頂壓入新元素 以上函式均包含在標...

棧的相關操作

學習棧的時候自己寫了個 革新就是加上了動態輸出棧內容,可以直觀的觀察了解棧內情況,對初學棧的同學應該有一定幫助。庫函式標頭檔案包含 include include include 函式狀態碼定義 define true 1 define false 0 define ok 1 define erro...