数组模拟栈、队列

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const int N = 100010;

int stk[N], tt;

void init(){
tt = 0;
}

void push(int x){
stk[ ++ tt] = x;
}

void pop(int x){
tt -- ;
}

bool empty(){
if (tt > 0)
return 0;
else
return 1;
}

队列

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
const int N = 100010;

int q[N], hh, tt = -1;

void push(int x){
q[++ tt] = x;
}

void pop(){
hh ++;
}

bool empty(){
if(hh <= tt)
return 0;
else
return 1;
}