C 棧和佇列

2021-10-10 20:33:37 字數 1671 閱讀 8631

#include

#define ok 1

#define error 0

using

namespace std;

typedef

int elemtype;

typedef

int qelemtype;

typedef

int status;

//鏈棧儲存結構

typedef

struct stacknode

stacknode,

*linkstack;

status initstack

(linkstack &s)

status push

(linkstack &s,elemtype e)

status pop

(linkstack &s,elemtype &e)

elemtype gettop

(linkstack s)

//佇列的鏈式儲存結構

typedef

struct qnode

qnode,

*queueptr;

typedef

struct

linkqueue;

status initqueue

(linkqueue &q)

status enqueue

(linkqueue &q,qelemtype e)

status dequeue

(linkqueue &q,qelemtype &e)

qelemtype gethead

(linkqueue q)

void

showhelp()

intmain()

break

;case3:

cout <<

"請輸入要出棧的元素個數n:"

; cin >> n;

for(

int i=

0;i)break

;case4:

cout <<

"棧頂元素:"

;gettop

(l);

cout << endl;

break

;case5:

linkqueue q;

initqueue

(q);

cout <<

"佇列建立成功!"

;case6:

cout <<

"請輸入入隊元素:"

; cin >> s;

enqueue

(q,s)

; cout <<

"入隊成功!"

;case7:

dequeue

(q,s)

; cout <<

"出隊成功!"

<< endl;

break

;case8:

cout <<

"隊頭元素:"

<< endl;

gethead

(q);

break

;case0:

work =0;

}}return0;

}

c 棧和佇列

c 棧 include using std stack s.empty 如果棧為空返回1,否則返回0 s.size 返回棧中元素的個數 s.pop 刪除棧頂元素但不返回其值 s.top 返回棧頂的元素,但不刪除該元素 s.push 在棧頂壓入新元素 測試例項 include include usin...

c 棧和佇列

使用標準庫的棧和佇列時,先包含相關的標頭檔案 include include 定義棧如下 stackstk 定義佇列如下 queueq 棧提供了如下的操作 cpp view plain copy s.empty 如果棧為空返回 true,否則返回 false s.size 返回棧中元素的個數 s.p...

C 棧和佇列

使用標準庫的棧和佇列時,先包含相關的標頭檔案 include include 定義棧如下 stackstk 定義佇列如下 queueq 棧提供了如下的操作 cpp view plain copy s.empty 如果棧為空返回 true 否則返回 false s.size 返回棧中元素的個數 s.p...