栈和队列
栈的模拟:一个数组和一个变量
#include <iostream>
using namespace std;
cosnt int N = 10e5;
int stk[N],tt;
// 插入栈
void push(int x){
stk[++tt] = x;
}
// 弹出栈
void pop(){
tt--;
}
// 判断栈是否为空
bool isEmpty(){
if(tt > 0){
return false;
}else{
return true;
}
}
int main(){
return 0;
}
队列的模拟:一个数组,两个变量 队列和栈的数字生长情况一模一样
int q[N],tt = -1,hh; // tt是尾部,加入;hh是头部,弹出 ,tt=-1是习惯,yxc习惯从-1开始
void push(int x){
q[++tt] = x;
}
void pop(){
hh++;
}
bool isEmpty(){
if(tt >= hh) return false;
else return true;
}
int get_tt_hh(){
return tt | hh;
}