C 利用鍊錶寫乙個簡單的棧例項詳解

2022-10-04 01:06:12 字數 1289 閱讀 6490

c++中其實有stack的模板類。功能更為強大。

自己寫乙個棧能讓我們對棧這種資料程式設計客棧結構更加熟悉。這個棧有乙個不足之處就是裡程式設計客棧面存放的元素型別只能為int。

#include

using namespace std;

class stack

; node *head;

node *p;

int length;

public:

stack()

void push(int n)//入棧

else

length ++;

} int pop()//出棧並且將出棧的元素返回

node *q;

int data;

q = p;

data = p->data;

p = p->next;

delete(q);

length --;

return data;

} int size()//返回元素個數

int top()//返回棧頂元素

bool isempty()//判斷棧是不是空的

else

} void clear()//清空棧中的所有元素

}};int main()

; node *head;

node *p;

int lengdbhzpgth;

public:

stack()

void push(t n)//入棧

else

length ++;

} t pop()//出棧並且將出棧的元素返回

node *q;

int data;

q = p;

data = p->data;

p = p->next;

delete(q);

length --;

return data;

} int size()//返回元素個數

t top()//返回棧頂元素

bool isempty()//判斷棧是不是空的

else

} void clear()//清空棧中的所有元素

}};int main()

{ stack s;

s.push('a');

s.push('b');

s.push('c');

while(!s.isempty())

{ cout<

本文標題: c++利用鍊錶寫乙個簡單的棧例項詳解

本文位址:

利用泛型寫乙個簡單的鍊錶

設計模式 基於c 的工程化實現及擴充套件 利用泛型實現簡單鍊錶 namespace bangworks.practcalpattern.generic set 利用泛型引數,初始化node public node t data 用來儲存下乙個節點 private node nextnode publ...

利用泛型寫乙個簡單的鍊錶

設計模式 基於c 的工程化實現及擴充套件 利用泛型實現簡單鍊錶 namespace bangworks.practcalpattern.generic set 利用泛型引數,初始化node public node t data 用來儲存下乙個節點 private node nextnode publ...

乙個簡單的單向鍊錶 C

singlylinkedlist.h include include class node 構造方法,方便快速建立結點 node int data,node next class list 返回鍊錶長度 list 建構函式 list const list temp 拷貝建構函式 list 析構函式 ...