스 택 의 간단 한 실현 및 간단 한 조작
1049 단어 데이터 구조, 스 택, 배열
/*
* stack.c
*
* Created on: Dec 4, 2012
* Author: fsxchen
* FILO , ( )
*/
#include
#define MAXSIZE 10
typedef struct STACK
{
int data[MAXSIZE]; /* */
int top; /* */
}SqStack; /* */
void InitStack(SqStack *space) /* */
{
space->top = -1;
}
void Push(SqStack *s) /* */
{
int val;
printf(" ");
scanf("%d",&val);
if(s->top == MAXSIZE)
printf("Error");
s->top++;
s->data[s->top] = val;
}
int Pop(SqStack *s)
{
int i;
if(s->top == -1)
{
printf("ERROR");
return -1;
}
i = s->data[s->top];
s->top--;
return i;
}
int main()
{
SqStack sta;
InitStack(&sta);
printf("%d", sta.top);
Push(&sta);
printf("%d", sta.top);
return 0;
}
주의 하 세 요. 배열 로 스 택 을 실현 하 는 것 이 비교적 간단 합 니까? 스 택 은 매우 유용 한 데이터 구조 입 니 다. 시스템 에서 재 귀적 으로 호출 된 매개 변수 저장, 역 폴란드 식 계산 사 칙 연산 등 이 모두 매우 중요 합 니 다!