코드스테이츠 BE 23일차 - 자료구조 / 알고리즘 Stack, Queue

coding infant·2022년 7월 25일

코드스테이츠BE

목록 보기
23/48

데이터는 분석하고 정리하여 활용해야 유의미

데이터의 특징을 잘 파악, 분석, 정리, 활용해야

자료구조 : 단순구조(2진수, 정수/실수, 문자/문자열), 선형구조(리스트, 연결리스트- 단순, 이중, 원형, 덱, 스택, 큐), 비선형구조(트리 - 일반, 이진, 그래프 - 방향, 무방향), 파일구조(순차, 색인, 직접)

자주 쓰는 네 가지 자료구조 : Stack, Queue, Tree, Graph

[Stack]

LIFO (Last In First Out)

데이터 하나씩 넣고 뺌

하나의 입출력 방향

stack.push(), stack.pop()

push(): 스택에 데이터를 추가

pop(): 가장 나중에 추가된 데이터를 스택에서 삭제하고 삭제한 데이터를 리턴

size(): 스택에 추가된 데이터의 크기를 리턴

peek(): 가장 나중에 추가된 데이터를 리턴

show(): 현재 스택에 포함되어 있는 모든 데이터를 String 타입으로 변환하여 리턴

clear(): 현재 스택에 포함되어 있는 모든 데이터 삭제

ex. 인터넷 뒤로가기, 앞으로 가기

[Queue]

줄 서서 기다리다, 대기행렬

FIFO

데이터 하나씩 넣고 뺌

두 개의 입출력 방향

queue.add(), queue.poll()

add(): 큐에 데이터를 추가

poll(): 가장 먼저 추가된 데이터를 큐에서 삭제하고 삭제한 데이터를 리턴

size(): 큐에 추가된 데이터의 크기를 리턴

peek(): 큐에 가장 먼저 추가된 데이터를 리턴

show(): 큐에 들어있는 모든 데이터를 String 타입으로 변환하여 리턴

clear(): 큐에 들어있는 모든 데이터를 삭제

ex. 프린터 인쇄, 버퍼링

0개의 댓글