파이썬 라이브러리 deque

kkado·2022년 5월 8일
0

파이썬

목록 보기
1/4
post-thumbnail

파이썬의 자료구조 중 하나인 deque에 대해 알아보자
여담이지만 처음엔 '디큐' 인 줄 알았는데 알고보니 '데크' 이더라 흠흠

deque는 양쪽 끝 모두에 출입구를 가지고 있다.
스택처럼 사용할 수도 있고, 큐처럼 사용할 수도 있는 아주 훌륭한 자료구조이다.

deque의 선언

from collections import deque

q = deque()

이러면 끝이다. 초기값을 넣어주고 싶으면 괄호 안에 넣어주면 된다.

q = deque('hello')
>> deque(['h', 'e', 'l', 'l', 'o'])

deque의 간단한 기능들

우선 리스트처럼 인덱스로 접근이 가능하다.

q = deque('hello')
print(q[2])
>> l

인덱스에 접근하여 수정 역시 가능하다.

q = deque('hello')
q[2] = 'o'
print(q)
>> deque(['h', 'e', 'o', 'l', 'o'])

push, pop 관련 함수들은 다음과 같다.

  • deque.append() : deque의 오른쪽 끝에 삽입
  • deque.appendleft() : deuqe의 왼쪽 끝에 삽입
  • deque.insert() : 임의의 index에 element를 삽입
  • deque.pop() : deque의 오른쪽 끝 element를 제거함과 동시에 return
  • deque.popleft() : deque의 왼쪽 끝 element를 제거함과 동시에 return
  • deque.remove() : element를 deque에서 찾아 삭제

함수 이름도 직관적이고 리스트와 비슷한 구석이 아주 많아서 약방의 감초처럼 사용될 것 같다.

첫부분과 끝부분의 데이터에 접근하는 것이 굉장히 빠르기 때문에 push나 pop이 자주 일어나야 하는 문제에 사용하면 좋다.

profile
울면안돼 쫄면안돼 냉면됩니다

0개의 댓글