본문 바로가기

Life Style/Study

[노마드 코더] 자료구조와 알고리즘

반응형

 

데이터 구조

Queues와 Stacks : 프로그래밍 언어에서 존재하지 않는 규칙

즉, 추상적 자료구조 ADT : Abstract Data Type

코드로 구현된 자료구조가 아니라, 행동양식만 정의 해둔 것

-> 개발자가 직접 자료구조를 만들 수 있다.

-> 스택과 큐는 추상적 자료구조로 규칙만 지키면 자료구조에 적용 가능하다.

 

스택과 큐는 배열에 규칙을 적용시켜둔 것으로,

 

스택은 팬케이크로 생각하면 좋다.

스택은 생성시 아래에서 위로 쌓이고 소멸시 위에서 부터 사라진다.

즉, 스택은 배열을 수직으로 쌓은 것과 같은 것이다.

LIFO구조 : Last In First Out

 

큐는 줄서기로 생각하면 좋다.

줄 맨 앞에 서있는 사람이 먼저 버스를 타고 마지막 사람이 마지막에 탄다.

즉, 큐의 가장 처음 생성된 요소가 가장 처음 소멸이 된다.

FIFO구조 : First In First Out

 

언제 스택과 큐를 사용할까?

뒤로가기 : 스택 -> 웹페이지 히스토리 스택의 맨위의 한 페이지

이메일 전달, 푸시 알림, 쇼핑몰 주문 처리, 콜센터 백엔드 : 큐 -> 들어온 순서대로 처리

 

  스택
특징 LIFO 구조 FIFO 구조
순서 생성시 아래에서 부터 위로,
소멸시 위에서부터 아래로
생성순서대로 소멸
예시 브라우저 뒤로가기 푸시 알림, 주문 처리, 콜센터 처리

 

 

 

https://www.youtube.com/watch?v=Nk_dGScimz8 

 

반응형