스택이라는 것에 대하여 배웠다.
한쪽 끝으로만 자료를 넣고 뺄 수 있는 자료 구조.
[컴퓨터인터넷IT용어대사전]
스택이란 자료 구조는 "빨래통"을 떠올리시면 됩니다.
데이터를 한 곳에서만 넣었다 뺄 수 있습니다.
가장 밑에 있는 빨래를 뺄 수 있나요? 아뇨!
가장 위에서만 빨래를 빼거나 넣을 수 있습니다!
그러면 가장 처음에 넣은 빨래는?
가장 늦게 나오겠죠!
가장 마지막에 넣은 빨래는?
가장 빨리 나옵니다!
이런 자료 구조를 Last In First Out 이라고 해서 LIFO 라고 부릅니다.
이런 자료구조가 왜 필요한가?
바로, 넣은 순서를 쌓아두고 있기 때문입니다.
그 순서가 필요한 경우가 있습니다.
예를 들어 컴퓨터의 되돌리기(Ctrl + Z) 기능을 아시나요?
직전에 했던 행동을 되돌리고 싶을 때 사용하는 기능인데,
이를 위해서는 내가 했던 행동들을 순서대로 기억해야 하므로
스택을 사용합니다.
스택 이라는 자료 구조에서 제공하는 기능은 다음과 같습니다!
push(data) : 맨 앞에 데이터 넣기
pop() : 맨 앞의 데이터 뽑기
peek() : 맨 앞의 데이터 보기
isEmpty(): 스택이 비었는지 안 비었는지 여부 반환해주기
데이터 넣고 뽑는 걸 자주하는 자료 구조입니다.