본문 바로가기

알고리즘

Stack , Queue 스택과 큐

Stack(스택)

  • 후입선출
  • 용어
    • Top: 삽입과 삭제가 일어나는 위치
    • push: top 위치에 새로운 데이터를 삽입
    • pop: top 위치에 새로운 데이터를 삭제하고 확인
    • peek: top 위치에 현재 있는 데이터를 단순 확인
  • 우선 탐색(DFS), 백트래킹 종류에서 효과적
  • new Stack<>()은 자바 초창기에 나온 Vector 기반이라 멀티 코어 성능에서 좋지 않다.
    • Deque를 사용하는 것을 추천
    • Thread-safe가 필요한 경우 concurrentLinkedDeque 사용

  • 선입선출
  • 삽입 삭제가 양방향
  • 용어
    • rear: 큐에서 가장 끝 데이터를 가리키는 영역(가장 최근에 들어온 데이터)
    • front: 큐에서 가장 앞의 데이터를 가리키는 영역
    • add: rear 부분에 새로운 데이터를 삽입
    • poll: front 부분에 데이터를 삭제하고 확인
    • peek: front에 있는 데이터를 단순 확인
  • 너비 우선 탐색에서 자주 사용

 

 

'알고리즘' 카테고리의 다른 글

선택 정렬  (0) 2024.04.06
버블 정렬  (1) 2024.03.22
구간 합  (0) 2024.03.20
배열과 리스트  (0) 2024.03.20
디버깅  (0) 2024.03.14