[자료구조 / Stack, queue]

G·2021년 4월 14일
0
post-thumbnail

자료구조

오늘은 자료구조중 stack에 대해서 공부했다!

자료구조에 대해서 간단히 설명하자면, 여러 데이터들의 묶음을 어떻게 저장할 것이고 또 어떻게 사용할 것인지를 정의한 것이라고 한다.

자료구조에서 가장 큰 비중을 차지하는 것은 자료, data이며, 실생활에 있는 문자, 숫자, 소리, 그림 등.. 많은것들을 자료(data)라고 한다.

아래 트리구조를 통해 자료구조를 살펴보자.
트리구조 참조사이트

트리구조처럼 잘 정리되어야 한눈에 알아보기가 편하듯, 모든 자료들의 특징을 잘 파악해서 정리하고 활용해야 의미가 있다! 무분별하게 이곳저곳에 저장하고 한군데에 몰아넣거나 하면 효율이 떨어진다.
이처럼 자료의 특징마다 여러 방법들을 만들어놓은게 위와같은 자료구조이다.

Stack

오늘 배운 stack의 의미를 한번 보자.

쌓다, 쌓이다, 포개지다의 의미를 지니고 있는데 말그대로 stack은 자료(data)를 쌓는 자료구조이다.

개념공부를 위해 간단히 예를 들어보면,
끝이 막혀있는 골목길로 생각하면 된다.
차들이 한대씩 골목길로 들어가면, 나올때는 가장 마지막에 들어간 차가 제일 먼저 나올것이고, 가장 처음에 들어간 차가 가장 마지막에 나올것이다.
이를 FILO(First In Last Out) 또는 LIFO(Last In First Out)라고 부른다.

웹페이지에서 이전페이지로 갈때나 다음페이지로 이동할때도 stack이라고 생각할 수 있다.

위 개념이 stack의 개념이다!

queue

queue도 뜻을 찾아보면 줄을서서 기다리다, 대기행렬 이라는 뜻을 가지고 있다.

간단히 예로들자면, 톨게이트를 생각하면 된다.
처음에 들어온 차가 처음으로 나가고, 마지막에 들어온차가 마지막에 나가는 특성을 가지고 있다!
stack과는 좀 다르다.

실사용으로는 우리가 흔히 사용하는 프린트기에서 사용된다. 만약에 순서 상관없이 인쇄가 되어진다면, 결과물은 뒤죽박죽될것이다.

이게 queue의 간단한 개념이다.!

profile
Drarreg

0개의 댓글