CodingTest) 큐

JJONGHA2·2023년 4월 14일
0

CodingTest

목록 보기
3/5
post-thumbnail

코테연습을 하다 보면 List 요소들을 뒤에서 꺼낼때는 .pop( ) 메서드를 사용하면 된다.

하지만 List를 스택 말고 큐처럼 사용할려면 어떻게 해야 할까.

  • deque 기능을 사용하자!

deque 는 스택과 큐의 기능을 모두 가진 객체로써 스택처럼 사용할 수도 있고, 큐처럼 사용할 수도 있다.

우선 deque를 사용하기 위해서는

from collections import deque

로 import를 해주어야 한다. 그다음 deque(리스트) 식으로 사용해 주면 된다.

deque(arr)

이런식으로 말이다.

그렇다면 바로 예시를 통하여 여러 기능을 알아보자.

arr = [2, 4, 3, 1, 5]
que = deque(arr)

먼저 List 와 deque 를 만들어주자.
당연히 Stack 처럼 append 와 pop이 동작한다.

print(que.pop())
print(que)
que.append(6)
print(que)

실행결과

5
deque([2, 4, 3, 1])
deque([2, 4, 3, 1, 6])

자 이제 여기서 큐처럼도 동작할 수 있는데, appendleft( ) 와 popleft( ) 를 사용하여 List의 앞쪽에 추가하거나 앞쪽 요소를 꺼내 쓸수가 있다.

print(que)
print(que.popleft())
print(que)
que.appendleft(7)
print(que)

실행결과

deque([2, 4, 3, 1, 6])
2
deque([4, 3, 1, 6])
deque([7, 4, 3, 1, 6])

위 코드 실행 결과를 보면 List의 왼쪽 즉, 앞쪽에 요소를 삽입하고, 앞쪽부터 꺼내 쓸 수 있는 것을 확인할 수 있다.

위 메서드 외 일반적으로 List에서 사용하는 것들

  • .reverse( ) : 내용 좌우 반전
  • .insert( ) : 삽입
  • .remove( ) : 삭제

등등
모두 정상적으로 잘 동작한다.

profile
깡통훈련시키기

0개의 댓글