뇌를자극하는 알고리즘 1-2장 스택 AS_IsFull 함수 구현
- 뇌를자극하는알고리즘/VitaminQuiz
- 2022. 1. 23. 16:04
AS_Push 할 경우 현재 Stack 이 Full 인지 검사하도록 추가했다.
void AS_Push(ArrayStack* Stack, ElementType Data)
{
int Position = Stack->Top;
/* 기존 AS_Push 함수에 AS_IsFull 함수 추가 */
if(AS_IsFull(Stack))
{
Stack->Nodes[Position].Data = Data;
printf("Stack->Nodes[Position].Data : %p ", &Stack->Nodes[Position].Data);
printf("Stack->Top: %d\n", Stack->Top);
Stack->Top++;
}
else
{
printf("NOTHING.\n");
}
}
소스 원본은 아래와 같음.
용량이 Full 이 아니면 return 1 을 하여 AS_Push 에서 if문을 확인하도록 함.
int AS_IsFull(ArrayStack *Stack)
{
if(Stack->Capacity == Stack->Top)
{
printf("Stack Capacity is full\n");
return 0;
}
else
{
printf("Stck capacity is Okay\n");
return 1;
}
}
마음대로 퍼가시고~ 광고한번씩 눌러주세요 ^_^