基本操作:
初始化栈

InitStack(&S)

判断栈空

EmptyStack(&S);

判断栈满

StackFull(&S);

获取栈顶元素

GetTop(&S);

进栈

Push(&S);

出栈

Pop(&S);

正片开始
初始化栈

 int InitStack(SqStack &s){S.top=-1;return OK;}

结构体先声明一下

#define MaxSize 100
typedef  struct{DataType data[Maxsize];int top;
}SqStack;

判断空

int StackEmpty(SqStack S){return (S.top==-1?TRUE:FALSE;);
}

判断栈满

int StackFull(SqStack S){return (S.top==maxsize-1?TRUE:FLASE;);
}

进栈

int Push(SqStack &S,DataType e){if(StackFull(S)) retuern ERROR;S.top++;S.data[S.top]=e;retuern OK;
}

出栈

int Pop(SqStack &S,DataType &e){if(StackEmpty(S)) return ERROR;e=S.data[top];S.top--;return OK;
}

取栈顶元素

int GetTOp(SqStack S,DataType &e){if(StackEmpty(S)) return ERROER;e=S.data[top];return OK;
}

以上是栈的顺序存储


接下来是链式存储
和链式存储相不同的是顺序是以数组实现,链式是用数组形成的,下一章节讨论

数据结构第二版(朱昌杰版)栈和队列二相关推荐

  1. SDUT-2132_数据结构实验之栈与队列二:一般算术表达式转换成后缀式

    数据结构实验之栈与队列二:一般算术表达式转换成后缀式 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 对于一个基于二元运 ...

  2. 2022天勤考研数据结构笔记 第3章 栈和队列

    2022天勤考研数据结构笔记 第3章 栈和队列(更新中) 第3章 栈和队列 3.1 结构体定义 3.2 顺序栈 3.3 链栈 3.4 栈的应用 3.5 顺序队 3.6 链队 第3章 栈和队列 栈和队列 ...

  3. 数据结构java版之《栈和队列》

    1.栈. (Android的Activity加载是基础栈结构的) 底层使用数组实现 package ch4; /*** 栈* @author Howard* 特点:* 1.通常情况作为程序员的工具集来 ...

  4. yxc_第二章 数据结构(一)_栈和队列

    目录 一.栈和队列的代码操作 1.AcWing 828 模拟栈 2.AcWing 829 模拟队列 二.单调栈 1.AcWing 830 单调栈 三.单调队列 1.AcWing 154 滑动窗口 一. ...

  5. b+树时间复杂度_数据结构:线性表,栈,队列,数组,字符串,树和二叉树,哈希表...

    作者:张人大 代码效率优化 复杂度 -- 一个关于输入数据量n的函数 时间复杂度 -- 昂贵 与代码的结构设计有着紧密关系 一个顺序结构的代码,时间复杂度是O(1), 即任务与算例个数 n 无关 空间 ...

  6. c++数据结构队列栈尸体_一本正经的聊数据结构(3):栈和队列

    前文传送门: 「一本正经的聊数据结构(1):时间复杂度」 「一本正经的聊数据结构(2):数组与向量」 引言 前一篇内容我们介绍了数组和向量,虽然说向量是数组的一个升级版,但是在另一个维度上,他们都属于 ...

  7. 栈和队列都是什么结构_数据结构与算法之初识栈与队列

    栈和队列 学习目标 本节我们将初步认识栈和队列,栈和队列是限定插入和删除只能在表的"端点"进行的线性表. 开始学习 01栈 是什么? 限定仅在表尾进行插入和删除操作的线性表,表尾- ...

  8. Python__数据结构与算法——表、栈、队列

    目录 一.表 二.栈(后进先出) 三.队列(先进先出) 数据结构使用来描述一种或多种数据元素之间的特定关系,算法是程序设计中对数据操作的描述,数据结构和算法组成了程序.对于简单的任务,只要使用编程语言 ...

  9. c++数据结构队列栈尸体_数据结构-第三章:栈和队列(栈的应用、括号匹配、表达式转换)...

    第三章:栈和队列 下面讲解栈的应用主要内容有:栈的应用.括号匹配.中 后 前 缀表达式转换 1.栈的应用 1.1括号匹配 我们在数学运算中 [(A+b)*c] - (E-F) 往往都会有[ ] 和 ( ...

  10. c语言中缀表达式求值_数据结构-第三章:栈和队列(栈的应用、括号匹配、表达式转换)

    第三章:栈和队列 下面讲解栈的应用主要内容有:栈的应用.括号匹配.中 后 前 缀表达式转换 1.栈的应用 1.1括号匹配 我们在数学运算中 [(A+b)*c] - (E-F) 往往都会有[ ] 和 ( ...

最新文章

  1. Apache服务器下使用 ab 命令进行压力测试
  2. 华为实习日记——第二十三天
  3. Scala模式匹配:对规则进行匹配
  4. html代码编辑器sp,在线HTML编译,文本关键字高亮显示,富文本编辑实现大概思路...
  5. 【转】ABP源码分析二十二:Navigation
  6. OSChina 周一乱弹 —— 程序员的浪漫你不懂
  7. c语言实现自动编译器,实现简易的C语言编译器(part 1)
  8. SVN学习:SVN的下载安装
  9. 广告终结者chinalist-easylist语法规则
  10. 人工智能的安全、伦理和隐私问题
  11. selenium模拟登陆12306
  12. nats断链情况总结
  13. 一个不能吃的中秋月饼
  14. JS中数组(Array)、Json对象长度(length)获取方法
  15. 逻辑回归(吴恩达机器学习笔记)
  16. python | requests库基本应用
  17. maven 开发 ejb ear
  18. 史上最全的 iOS 各种测试工具集锦
  19. html输入框电话代码,电话号码输入框测试用例
  20. 按键精灵的回车和换行符如何打

热门文章

  1. HTC终端4G网络附着问题
  2. 一般linux用哪个系统,一般linux服务器用哪个系统
  3. 中国5G套餐用户规模已超5000万!
  4. 17.unity粒子特效--Renderer模块、灯光模块、粒子系统组合、二级发射器、粒子间碰撞、粒子拖尾
  5. synchronized锁住了什么
  6. 认识方程式、函数、坐标图形
  7. 使用Excel进行时间转换(附时间小知识)
  8. 6-5 普通账户和支票账户 (10 分)
  9. pascal境界~~
  10. 哈啰出行Java开发面经