/*****************************\
* 数据结构之栈
* IDE:VS2010
\*****************************/
/*
* 栈的操作:
* 初始化、进栈、出栈(取栈顶元素)、栈是否非空
*/
#include <iostream>
using namespace std;
//定义顺序栈
#define MAX_LEN 100
typedef struct stack
{
int data[MAX_LEN];
int top;
}stack;
//初始化,建个空栈s
void initStack(stack* s)
{
s->top = -1;
}
//是否非空
bool isEmpty(stack* s)
{
return s->top==-1 ? true : false;
}
//进栈
bool push(stack* s, int x)
{
if(s->top == MAX_LEN-1)
return false;
s->top++;
s->data[s->top] = x;
return true;
}
//出栈(取栈顶元素)
bool pop(stack* s, int* x)
{
if(!isEmpty(s))
{
*x=s->data[s->top--];
return true;
}
return false;
}
数据结构之栈
最新推荐文章于 2022-09-05 21:58:33 发布