deque::insert

deque::insert (지정 위치에 삽입)

지정한 위치 앞에 요소(들)를 삽입하는 멤버 함수예요. 값·개수·범위·초기화자 목록 형태가 있어요.

출처: cppreference

본문

insert는 컨테이너의 지정 위치에 요소를 삽입해요.

iterator insert( const_iterator pos, const T& value );    // (1)

iterator insert( const_iterator pos, T&& value );         // (2) since C++11

iterator insert( const_iterator pos,
                 size_type count, const T& value );       // (3)

template< class InputIt >
iterator insert( const_iterator pos, InputIt first, InputIt last );  // (4)

iterator insert( const_iterator pos, std::initializer_list<T> ilist );  // (5)
    1. pos 앞에 value 복사본 하나를 삽입해요.
    1. value를 이동해 삽입해요.
    1. value 복사본 count개를 삽입해요.
    1. 범위 [first, last)의 요소를 삽입해요.
    1. 초기화자 목록 ilist의 요소를 삽입해요.
  • 반환 값: 삽입된 첫 요소를 가리키는 반복자. 아무것도 삽입하지 않았으면 pos예요.

  • 복잡도: count와 삽입 위치 사이의 요소 수 중 작은 값에 선형. 양끝 삽입은 상수에 가까워요.

deque는 중간 삽입이 상대적으로 비싸므로, 중간에 자주 끼워 넣는 작업이 많으면 다른 자료구조를 고려하는 게 좋아요.

더 알아보기 (Learn more)

cppreference