알고리즘

스택 구현

개발자자자 2022. 10. 30. 17:29

top 은 push를 하면 값이 들어갈 곳이라고 할 수 있겟다

 

#include <stdio.h>

#define MAX_N 100

 

int top;

int stack[MAX_N];

 

void stackInit(void){

  top = 0;

}

 

int stackIsEmpty(void){

  return (top =0);

}

int stackIsFull(void){ 

 return (top == MAX_N);

}

int stackPush(int value){

  if(stackIsFull()){

    printf("stack overflow!");

    return 0;

  }

 

 stack[top] = value;

  top++;

 

  return 1;

}

 

int stackPop(int *value){

  if (stackIsEmpty())

  { 

     return 0;

  }

  top --;

  *value = stack[top];

  return 1;

}