数据结构(6)----栈与队列之栈的链式存储结构及其实现
#include<iostream>using namespace std; typedef int SElemType; typedef struct StackNode{//栈内元素结构 SElemType data;struct StackNode *next; }StackNode;typedef StackNode * LinkStackPtr; typedef struct LinkStack{LinkStackPtr top; //栈顶指针int count;//栈的元素计数器 }LinkStack;/*进栈*/ void Push( LinkStack *S, SElemType e){LinkStackPtr s = new StackNode;s->data = e;s->next = S->top;S->top = s;S->count++; } /*出栈*/ void Pop(LinkStack *S){LinkStackPtr p;//判断栈是否为空if (S->count < 0){cout << "栈空了";return;}cout << S->top->data << endl;;p = S->top; //将栈顶节点赋值给pS->top = S->top->next;free(p);S->count--; }int main(){LinkStack *S = new LinkStack;S->count = -1;Push(S, 1);Push(S, 2);Push(S, 3);Push(S, 4);Push(S, 5);Pop(S);Pop(S);Pop(S);Pop(S);Pop(S); }
转载于:https://www.cnblogs.com/EmperLin/p/6539424.html
数据结构(6)----栈与队列之栈的链式存储结构及其实现相关推荐
- 【数据结构笔记06】队列及其顺序存储、链式存储
本次笔记内容: 2.3.1 队列及顺序存储实现 2.3.2 队列的链式存储实现 文章目录 什么是队列 队列的顺序存储实现 循环队列 队列的链式存储实现 什么是队列 队列(Queue):具有一定操作约束 ...
- 数据结构—栈与队列【顺序存储、链式存储、卡特兰数、优先级队列】
- 数据结构|-二叉查找树(二叉搜索树)的链式存储结构的实现
二叉排序树,又称为二叉查找树. 它或者是一棵空树,或者是具有下列性质的二叉树. 若它的左子树不为空,则左子树上所有的结点的值均小于根结构的值: 若它的右子树不为空,则右字数上所有结点的值均大于它的根结 ...
- 数据结构(二):线性表包括顺序存储结构(顺序表、顺序队列和顺序栈)和链式存储结构(链表、链队列和链栈)...
还记得数据结构这个经典的分类图吧: 今天主要关注一下线性表. 什么是线性表 线性表的划分是从数据的逻辑结构上进行的.线性指的是在数据的逻辑结构上是线性的.即在数据元素的非空有限集中 (1) 存在唯一的 ...
- 数据结构学习笔记——链式存储结构实现栈(链栈)
目录 一.链栈的定义 二.链栈的初始化 三.判断链栈是否为空栈 四.进栈(插入操作) 五.出栈(删除操作) 六.读取链栈的栈顶元素 七.链栈的建立 八.链栈的遍历输出 链式存储结构实现栈完整代码 一个 ...
- 数据结构与算法——栈的链式存储结构及实现
目录 前言 一.栈的链式储存结构 二.栈的链式储存结构的操作 2.1 进栈操作 2.2 出栈操作 总结 前言 讲完了栈的顺序储存结构,我们现在来看看栈的链式存储结构,简称为链栈. 由于单链表中 ...
- 栈的链式存储结构及实现
今天学习栈的链式存储结构. 链式存储结构最大的好处就是没有空间的限制,通过指针指向将结点像一个链子一样把结点链接,那么栈的同样可以用于链式存储结构. 栈的链式存储结构,简称为链栈.想想看,栈只是栈顶来 ...
- 3.3 栈的链式存储结构
<?php header("content-type:text/html;charset=utf-8"); /*** 栈的链式存储结构的基本操作**包括* 1.初始化 __c ...
- 链式存储mysql_链栈:栈的链式存储结构
前面讲完了栈的顺序存储结构,我们现在来看看栈的链式存储结构,简称为链栈. 链栈是没有附加头结点的运算受限的单链表.栈顶指针就是链表的头指针. 栈是用栈顶来做插入和删除操作,那么对于链栈的栈顶放在链表的 ...
- 队列的链式存储结构及其实现_了解队列数据结构及其实现
队列的链式存储结构及其实现 A queue is a collection of items whereby its operations work in a FIFO - First In Firs ...
最新文章
- python format的功能_python format是什么
- 传统企业-全渠道营销解决方案-1
- layer 弹出框的使用
- Qt 如何发送和接收UDP数据报
- 2021年中国大学生程序设计竞赛 女生专场 - 热身赛 Problem C. 口算训练(质因子分解)
- SegmentFault 创始人祁宁对话 C# 之父 Anders Hejlsberg
- Unity的Animator中Transition有延迟的问题
- 计算机算法设计与分析 循环赛日程表
- 论软件定义GPU对AI数据中心优化的必要性
- 机器人操作系统ROS(一):发布接收消息
- 如何修改远程服务器登录密码
- java新手怎么用if alse_关于java:为什么“F”+“alse”不是==“False”?
- 如何优雅的停止一个线程?
- 机器视觉系统——光源及打光
- ODN中主干光交和配线光交的数量比例
- 揭秘全美第一黑客组织Anonymous(匿名者)的装备库
- ubuntu18.04 安装软件中心(software-center)
- Bitvise——服务器与本地交互软件(适合大文件传输)
- 福昕阅读器不能编辑情况
- MISRA-C 2019
热门文章
- mybatis 多数据源_Spring Boot 整合Mybatis实现多数据源配置及踩过的坑
- mysql基础之mariadb集群双主(主主)架构
- 与旧代码接口的注意事项
- How to create a angular2 project process
- jmeter安装配置
- 复杂对象ibatis插入,属性为list,怎么一次性插入
- jQuery1.3以上版本@的问题
- Android Studio connot resolve symbol XXX 无法解析的符号
- K个排序链表的合并(Hard)
- 【译】Objectively Speaking 2: A Crash Course in Objective-C for iOS 6