链栈的基本操作

链栈的基本操作实现代码如下:

10年积累的成都网站建设、网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有巨鹿免费网站建设让你可以放心的选择与我们合作。

#include

using namespace std;

#define TRUE 1

#define FALSE 0

//链栈的结构

typedef struct node

{

int data;

struct node *next;

}LinkStackNode;

typedef LinkStackNode *LinkStack;

//链栈进栈

int Push(LinkStack top, int x)//将数据元素x压入栈top中

{

LinkStackNode *temp;

temp = (LinkStackNode *)malloc(sizeof(LinkStackNode));

if (temp==NULL)//申请空间失败

{

return FALSE;

}

temp->data= x;

temp->next = top->next;

top->next = temp;//修改当前栈顶指针

return TRUE;

}

//链栈出栈

int Pop(LinkStack top, int *x)//将栈top的栈顶元素弹出,放到x所指的存储空间中

{

LinkStackNode *temp;

temp = top->next;

if (temp == NULL)//栈为空

{

return FALSE;

}

top->next = temp->next;

*x=temp->data ;

free(temp);//释放存储空间

return TRUE;

}


文章名称:链栈的基本操作
网页网址:http://azwzsj.com/article/ihpggo.html