본문 바로가기
스터디IT🌼/Algorithm

[ 파이썬 ] deque 관련 함수

by 동백사과 2022. 10. 5.

👍 python collections.deque

- deque ( 덱 ) 는 double-ended queue 의 줄임말로서 스택과 큐를 합친 것과 같은 양방향에서 데이터 삽입, 추출 등이 가능한 자료형을 의미

 

* 덱과 관련된 함수

함수 설명
append() deque 오른쪽에 값을 추가
appendleft() deque 왼쪽에 값을 추가
pop() deque 오른쪽에서 데이터 하나를 가져와서 반환, deque에서는 해당 값 삭제 
popleft() deque 왼쪽에서 데이터 하나를 가져와서 반환, deque에서는 해당 값 삭제 
deque(maxlen = n ) deque의 최대 길이를 n으로 제한, 제한된 길이 이상으로 오른쪽에 값이 들어오면 왼쪽에서부터 값이 삭제 
reverse() deque의 순서를 뒤집음
count(x) deque에서 x의 개수를 반환
rotate(x) x만큼 deque의 값을 오른쪽으로 이동. x가 음수면 왼쪽으로 이동
clear() deque를 비움

 

1. append

from collections import deque

deq1 = deque([1,2,3])
deq1.append(4) # 1 2 3 4

 

2. appendleft

from collections import deque

deq1 = deque([1,2,3])
deq1.appendleft(0) # 0 1 2 3

 

3. pop

from collections import deque

deq1 =deque([1,2,3])
res = deq1.pop() # res = 3 , deque=[1,2]

 

4. popleft

from collections import deque

deq1 = deque([1,2,3])
res = deq1.popleft() # res =1, deq1 =[2,3]

 

5. deque(maxlen = n)

from collections import deque

deq1 = deque(maxlen=3)

for i in range(5):
	deq1.append(i)
# 최종 deq1 = [2,3,4]

 

6. reverse

from collections import deque

deq1 = deque([1,2,3])
deq1.reverse() # deq1 = [3,2,1]

 

7. count(x)

from collections import deque

deq1 = deque([1, 3, 2, 4, 2, 3, 1])
count_n = deq1.count(2) #count_n = 2

 

8. rotate(x)

from collections import deque

deq1 = deque([1,2,3])
deq1.rotate(1) # deq1 = [ 3 1 2 ]

deq1.rotate(-2) # deq1 = [ 2 3 1] -> 왼쪽으로 2개씩 이동


9. clear

from collections import deque

deq1=deque([1,2,3])
deq1.clear() # deq1 = []

 


 

댓글