顺序栈

#pragma once
#ifndef _SEQSTACK_
#define _SEQSTACK_

#include
using namespace std;
typedef int DataType;

struct SeqStack {
    int MAXNUM;
    int t;
    DataType *s;
};
typedef SeqStack Node;
typedef SeqStack *PSeqStack;

PSeqStack creatEmptyStasck(int m) {
    PSeqStack stack = new Node;
    if (stack != NULL) {
        stack->s = new DataType[m];
        if (stack->s != NULL) {
            stack->MAXNUM = m;
            stack->t = -1;
        }
    }
    return stack;
}

int isEmptyStack(PSeqStack stack) {
    if (stack->t = -1)return 1;
    else return 0;
}

void push_seq(PSeqStack stack, DataType x) {

    if (stack->t >= stack->MAXNUM - 1) cout << "OverFlow" << endl;
    else {
        stack->t += 1;
        stack->s[stack->t] = x;
    }
}

void pop_seq(PSeqStack stack) {

    if (stack->t == -1)cout << "Underflow!" << endl;
    else {
        stack->t -= 1;
    }
}

DataType top_seq(PSeqStack stack) {
    if (stack->t == -1) {
        cout << "Underflow!" << endl;

    }
    else return (stack->s[stack->t]);
}

#endif

Original: https://www.cnblogs.com/iforeverhz/p/16255983.html
Author: iforeverhz
Title: 顺序栈

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/583238/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Redis集群搭建的三种方式

    一、单节点实例 单节点实例还是比较简单的,平时做个测试,写个小程序如果需要用到缓存的话,启动一个 Redis 还是很轻松的,做为一个 key/value 数据库也是可以胜任的 二、…

    Linux 2023年5月28日
    067
  • SpringBoot 多环境配置文件切换

    背景 很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用…

    Linux 2023年6月14日
    0142
  • 【转载】技术研究和个人成长方法

    TK 教主 16 年在腾讯内部的一个分享,讲述安全研究者的个人成长。虽然分享的内容是关于安全研究领域,但我相信对各个领域的学习成长是相同的。这里记录如下: 个人成长 确立个人方向,…

    Linux 2023年6月13日
    094
  • Linux基础学习(三)

    [root@ct7 ~]# grep -vc “/sbin/nologin” /etc/passwd [root@ct7 ~]# grep -v “/sbin/nologin” /…

    Linux 2023年6月8日
    092
  • 多用户共享文件

    假设有三个用户:Tom Jerry Bob.其中,tom和Jerry都属于market部,Bob属于tech部,请在/usr目录下创建两个用户共享的目录market和public,…

    Linux 2023年6月13日
    099
  • 统计算法_概率基础

    本次有以下函数 1、简单边际概率 2、联合概率 3、条件概率 4、随机变量期望值 5、随机变量方差 6、随机变量协方差 7、联合协方差 8、组合期望回报 9、投资组合风险 说概率前…

    Linux 2023年6月6日
    086
  • Linux驱动编程1——内核编译

    1.安装必要的内核开发包,包括gcc、make、libncurses-dev。 $ apt-get install gcc make libncurses-dev 2.$ make…

    Linux 2023年6月8日
    097
  • [云计算]TCA云架构-思维导图

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/Skybiubiu/p/15962992.htmlAut…

    Linux 2023年6月13日
    0129
  • redis批量删除key 远程批量删除key

    一、遇到的问题 在开发的过程中,经常会遇到要批量删除某种规则的key,如缓存的课程数据”course-课程uid”,其中课程uid是变量,我们需要删除&#8…

    Linux 2023年5月28日
    083
  • 在docker中使用主机串口通讯

    在进行软件docker化的过程时,很大的一个阻碍就是软件与各种外围硬件设备的交互,网口通信的设备能够很容易地接入容器,但是串口设备则要复杂一些。本文讨论在windows和linux…

    Linux 2023年6月6日
    0105
  • 随笔记录

    html结构、css表现、js行为vscode和sublime一样的在vscode中的插件:a.Auto Rename Tag 整体改变标签b.view-in-browser 预览…

    Linux 2023年6月13日
    090
  • 【Linux】【专项突破】CentOS下软件安装

    rpm yum软件仓库 配置文件 缓存处理 清理缓存 重构缓存 查询包的依赖关系 rpm 普通下载安装 rpm -ivh 包名 更新 rpm -Uvh 包全名 查询 rpm -q …

    Linux 2023年6月14日
    0122
  • Debian 9.4 安装教程

    我们这里选择install安装,不装桌面,因为是做服务器,装桌面没意义。 我们这里选择装英文版,你也可以装中文版本。 手动配置网络-manually 设置IP 设置 子网掩码 设置…

    Linux 2023年6月13日
    097
  • Redis (error) NOAUTH Authentication required.

    首先查看redis设置密码没 表示没有设置密码,设置redis密码 这个时候查看密码是会报错的。 需要noauth身份验证。 修改密码 Original: https://www….

    Linux 2023年5月28日
    0100
  • Spring 对Controller异常的统一处理

    对于Controller的异常处理,分为两种,一种是对已知的异常处理,一种是未知的异常处理 1、定义自定义异常类 /** * @author hzc * */ public cla…

    Linux 2023年6月7日
    0112
  • 学习一下 JVM (一) — 了解一下 JVM 基本概念

    一、JVM 基本认识 1、虚拟机 与 JVM (1)虚拟机(Virtual Machine),可以理解为一台虚拟的计算机,其是一款软件,用来执行一系列虚拟的计算机指令。可以分为:系…

    Linux 2023年6月11日
    0104
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球