首页 > 技术文章 > 数组模拟栈

G-H-Y 2021-01-19 11:09 原文

/**
 * 模拟栈的关键点在于确定栈顶指针到底是尾指针还是尾后指针,两者均可,但必须要明确一个
 * 在此代码中栈顶指针采用尾指针,且初始值为0代表栈为空,即从1开始存储数据,这些都能随意定,只要前后对应就好
 */
#include <iostream>

using namespace std;

const int N = 1e5 + 10;

int tt, stk[N];

void push(int x) // 将x压栈
{
    stk[++ tt] = x;
}
void pop() // 弹出栈顶元素
{
    -- tt;
}
int top() // 返回栈顶元素
{
    return stk[tt];
}
bool empty() // 判断栈是否为空
{
    if (tt > 0) return false;
    return true;
}

推荐阅读