CSP-J 2022 备战——栈的使用
CSP-J的比赛好像近在眼前了
仔细想想,前几周学的东西,还是太脱离普及组
接下来,就准备开始复习一些基础算法和数据结构
争取拿下一等奖
那么,下面是有关栈的笔记
特点:先进后出
支持操作:
push(压入):将数据存入栈中
pop(弹出):将数据从栈中丢弃
empty:判断栈是否为空。若为空则返回ture,反之返回false
top:获得栈顶信息
size:获得栈中元素的个数
头文件:#include <stack
使用方法:
stack<数据类型> 变量名;
变量名.操作函数();
数组实现:
这个既是重点,也是难点
我们用数组x来模拟栈,用h表示它的头,用t表示它的尾
初始化将h和t都赋值为0
//push:
void push(int n)
{
x[t]=n;
t++;
}
//pop:
void pop()
{
t--;
}
//empty:
bool empty()
{
return h==t;
}
//top:
int top()
{
return x[t];
}
//size:
int size()
{
return t;
}

浙公网安备 33010602011771号