数据结构之链栈 C++实现
  TEZNKK3IfmPf 2024年08月02日 41 0
/定义

节点类
class Node
{
public:
    methods
    Node(void);
    Node(int data);
    ~Node(void);

    /members
    Node* next;
    int data;
};

/链栈类///
class MyLinkStack{
public:
    mothods
    void Push(Node* node,Node* top);
    Node* Pop(Node* top);
    bool IsEmpty(Node* top);
    void PrintStack(Node* top);

    members
    Node* top;
};
/END//

实现//
/node methods/
Node::Node(void)
{
    Node::data=0;
    Node::next=NULL;
}

Node::Node(int data)
{
    Node::data = data;
    Node::next=NULL;
}

Node::~Node(void)
{
}

//end//

//MyLinkStack Methods/

void MyLinkStack::Push(Node* node,Node* top){
    if(this->IsEmpty(top))
    {
        return;
    }
node->next = top;
this->top = node;
}

Node* MyLinkStack::Pop(Node* top){
    if(this->IsEmpty(top))
    {
        return NULL;
    }

Node* tmp = top;
top=top->next;
MyLinkStack::top = top;
return tmp;
}

bool MyLinkStack::IsEmpty(Node* top){
return top==NULL;
}

void MyLinkStack::PrintStack(Node* top){
if(this->IsEmpty(top))
    {
        return;
    }

for(Node* tmp=this->top;tmp != NULL;tmp=tmp->next)
{
    std::cout<<tmp->data<<" ";
}
}
///end
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年08月02日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   10天前   18   0   0 编程开发
  TEZNKK3IfmPf   10天前   16   0   0 编程开发
  TEZNKK3IfmPf   10天前   20   0   0 编程开发i++
  TEZNKK3IfmPf   10天前   22   0   0 编程开发
TEZNKK3IfmPf