Algorithms-[Que & Stack]

2021. 12. 7. 16:43·코딩테스트/파이썬 알고리즘

이번에는 자주 쓰이는 큐와 스택에 대해서 설명할 것이다. 단순 리스트등으로 구현하면 시간초과나 메모리초과가 나오는 문제들을 자료구조를 큐와 스택으로 설정해서 간단하게 풀리는 문제들이 많다. 

Stack

스택의 가장 큰 특징은 후입선출(LIFO, Last-In-First-Out) (나중에 들어간것이 먼저 나감)이다.

데이터를 추가할 때도 top에 쌓이고, 삭제할 때도 top에 있는 것이 사라진다. 즉 한방향 구조이다. top에 데이터를 삽입하는 것을 push라고 하고, top에 있는 데이터를 삭제하는 것을 pop이라고 한다. 스택은 아래와 같은 문제에서 많이 사용된다. 전부 후입선출이라는 특징때문에 아래와 같이 마지막에 대한 데이터를 다루는 문제에서 유용하다. 특히 괄호쌍 문제는 매우 많이 나온다.

- 방문기록 (뒤로 가기) : 가장 나중에 열린 페이지부터 다시 보여준다.

- 역순 문자열 만들기 : 가장 나중에 입력된 문자부터 출력한다

- 괄호 쌍 검사

Que

que는 stack과 다르게 가장 큰 특징이 선입선출(FIFO,First in first out)(먼저 들어온것이 먼저 나감)이다.

큐는 top에서 데이터의 삽입과 삭제가 모두 일어나는 스택과는 달리 rear이라는 한쪽 끝에서는 삽입이 이루어지고 , front에서는 데이터의 삭제가 이뤄진다. rear에서 삽입하는것을 enqueue라고 하고, front에서 삭제하는 과정을 dequeue라고 칭한다. 큐는 선입선출이므로 순서가 중요한 문제들에서 사용된다.-

-우선순위가 같은 작업 예약

-너비 우선 탐색(BFS, Breadth-First Search) 구현

-(Cache) 구현

 

728x90

'코딩테스트 > 파이썬 알고리즘' 카테고리의 다른 글

Algorithms-[BFS]  (0) 2021.12.30
Algorithms-[Dynamic_Programming]  (0) 2021.12.19
Study-[Python_모듈/함수/패키지/메소드]  (0) 2021.12.07
Algorithms-[Euclidean algorithm & The Sieve of Eratosthenes ]  (0) 2021.12.01
Functions-[collections-(counter & most_common())]  (0) 2021.11.28
'코딩테스트/파이썬 알고리즘' 카테고리의 다른 글
  • Algorithms-[BFS]
  • Algorithms-[Dynamic_Programming]
  • Study-[Python_모듈/함수/패키지/메소드]
  • Algorithms-[Euclidean algorithm & The Sieve of Eratosthenes ]
창빵맨
창빵맨
  • 창빵맨
    Let's be Developers
    창빵맨
    로그인/로그아웃
  • 전체
    오늘
    어제
    • 분류 전체보기 (471)
      • 알쓸신잡 (79)
      • ML & DL (85)
        • Computer v.. (22)
        • NLP (22)
        • 파이썬 머신러닝 완.. (3)
        • 개념정리 (38)
      • 리눅스 (21)
      • 프로젝트 (29)
        • 산불 발생 예측 (6)
        • 음성비서 (12)
        • pdf 병합 프로그.. (0)
        • 수위 예측 (5)
        • 가짜 뉴스 분류 (5)
        • 전력사용량 예측 (1)
      • 코딩테스트 (217)
        • 프로그래머스[Pyt.. (17)
        • 프로그래머스[Fai.. (3)
        • 백준[Python] (160)
        • 이것이취업을위한코딩.. (18)
        • 파이썬 알고리즘 (19)
      • 데이터분석실습 (25)
        • 데이터 과학 기반의.. (18)
        • 헬로 데이터 과학 (7)
      • 메모장 (0)
      • 잡담 (4)
  • Personal

    GITHUB
    Instagram
  • 공지사항

  • 인기 글

  • 태그

    이분탐색
    그리디
    이코테
    나동빈
    백준
    DFS
    이것이취업을위한코딩테스트다
    파이썬
    dp
    BFS
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3

HOME

HOME

상단으로

티스토리툴바