728x90

스택

- 한쪽이 열려있는 통을 비유할 수 있음

- 먼저 들어간 것이 나중에 나오는 자료구조

- LIFO(Last-in, First-out) 구조

- 여기서 넣는 연산을 push, 꺼내는 연산을 pop이라 함

- pop을 하게되면 스택의 데이터의 조회 및 삭제를 하지만 peek을 하면 조회는 하지만 삭제를 안함

 

스택의 ADT

- 초기화

void StackInit(Stack* pStack);

- 비어있는지 확인

int SIsEmpty(Stack* pStack);

- 데이터 저장

void SPush(Stack* pStack, Data data);

- 데이터 삭제

    -> 삭제와 동시에 삭제하는 데이터 반환

    -> 삭제할 데이터가 있어야 함 (SIsEmpty가 먼저 호출이 되어야 함)

Data SPop(Stack* pStack);

- 데이터 조회(반환)

    -> pop과 달리 삭제를 하지 않음

    -> 조회할 데이터가 있어야 함 (SIsEmpty가 먼저 호출이 되어야 함)

Data SPeek(Stack* pStack);

 

 

728x90

+ Recent posts