结点结构

typedef char ElemType;

typedef struct LkStackNode{
ElemType data;
LkStackNode *next;
}*Stack,SNode,*PNode;

初始化链栈

Stack IntiStack(){
Stack s;
s=new LkStackNode; //分配结点空间
s->next=NULL; //处理next指针 return s; //返回栈指针
}

压栈

bool Push(Stack S,ElemType &x){
if(S==NULL){
return false; //栈无效,返回false
} PNode FirstCell;
FirstCell=new SNode; //为待数据分配一个结点空间 FirstCell->data=x;
FirstCell->next=S->next; //将新结点插在数据结点的最前面
S->next=FirstCell; return true;
}

出栈

bool Pop(Stack S,ElemType &x){
if(S==NULL||S->next==NULL){ //栈无效或空栈,无法出栈,返回false
return false;
} PNode FirstCell; FirstCell=S->next;
x=FirstCell->data; //返回栈顶元素 S->next=FirstCell->next;
delete FirstCell; //释放栈顶空间
return true;
}

访问栈顶元素

bool Top(Stack S,ElemType &x){
if(S==NULL||S->next==NULL){ //栈无效或空栈
return false;
} x=S->next->data; return true;
}

最新文章

  1. 如何让include标签包裹的布局置于屏幕最下方?
  2. 部署Eclipse中的Web项目到Tomcat服务器运行
  3. 转: Vue.js——60分钟组件快速入门(上篇)
  4. iOS 用代码+Xib搭建UI界面实例
  5. docker下部署gitlab
  6. Android之shape属性详解
  7. Wireshark基本介绍和学习TCP三次握手(转)
  8. 自定义input file样式
  9. Sql Server trace flags
  10. Razor基础语法
  11. tcpdf导出pdf数据支持中文的解决方案
  12. 201521123061 《Java程序设计》第一周学习总结
  13. web前端学习(2):开始编写HTML
  14. android View层的绘制流程
  15. mysql添加用户,授权,刷新权限
  16. phpstorm显示页面不停的在indexing转圈中,并且文件名还一直在刷新
  17. CA认证的原理和流程及https原理
  18. 替换字符串空格、tab制表符
  19. C#利用tabControl控件实现多窗体嵌入及关闭
  20. cat正常,cat重定向到文件可能是乱码;解决办法

热门文章

  1. 关于excel表格中只复制筛选后的数据
  2. 方法区(Method Area)基础知识
  3. 基础Web漏洞-SQL注入入门(手工注入篇)
  4. PHP图片压缩类,高清无损直接用就ok啦
  5. 大话Python切片,助你彻底掌控切片小妖精
  6. Python-组织结构-目录结构、包导入、__init__文件、模块内置变量、* 导入限制
  7. Centos-查看磁盘分区占用情况-df
  8. 配置hive的元数据到Mysql中
  9. 剑指offer-链表&数组
  10. python图像的绘制