資料結構棧C語言實現
阿新 • • 發佈:2019-02-16
根據《大話資料結構》整理
#include <stdio.h>
#define MAXSIZE 20
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
typedef int Status;
typedef int SElemType;
typedef struct
{
SElemType data[MAXSIZE];// 陣列實現的棧
int top;
} SqStack;
/* 插入元素e為新的棧頂元素 */
Status Push(SqStack *S, SElemType e)
{
if (S->top == MAXSIZE - 1) /* 棧滿 */
{
return ERROR;
}
S->top++; /* 棧頂指標增加一 */
S->data[S->top] = e; /* 將新插入元素賦值給棧頂空間 */
return OK;
}
Status Pop(SqStack *S, SElemType *e)
{
if (S->top == -1)
{
return ERROR;
}
*e = S->data[S->top]; /* 將要刪除的棧頂元素賦值給e */
S->top--; /* 棧頂指標減一 */
return OK;
}
/**
測試程式碼
*/
int main(void)
{
return 0;
}