懒猫老师:栈的链式储存,链表的实现
#include <iostream>using namespace std;//template <class DataType>struct Node {int data;struct Node* next;};class LinkStack {private:Node* top;public:LinkStack();~LinkStack();void push(int
·
#include <iostream>
using namespace std;
//template <class DataType>
struct Node {
int data;
struct Node* next;
};
class LinkStack {
private:
Node* top;
public:
LinkStack();
~LinkStack();
void push(int x);
int pop();
int getpop();
bool isEmpty();
};
LinkStack::LinkStack() {
top = NULL;
}
LinkStack::~LinkStack() {
while (top != NULL) {
Node* s = top;
top = top->next;
delete(s);
}
}
void LinkStack::push(int x) {
Node* s1;
s1 = new Node;
s1->data = x;
s1->next = top;
top = s1;
}
int LinkStack::pop() {
int x;
x = top->data;
top = top->next;
return x;
}
int LinkStack::getpop() {
int x;
x = top->data;
return x;
}
bool LinkStack::isEmpty() {
if (top == NULL)
return 1;
else
return 0;
}
int main() {
LinkStack st;
st.push(1);
st.push(2);
st.push(3);
int x1=st.getpop();
cout << x1 << endl;
st.pop();
st.pop();
st.isEmpty();
st.pop();
st.isEmpty();
}
更多推荐
已为社区贡献2条内容
所有评论(0)