Skip to main content

deque

Initialisation

Same as vector

Copy all vector elements to deque

just use deque<int> dq(vec.begin(), vec.end());

tip
// vector "vec" is given

deque<int> dq(vec.begin(), vec.end()); // dq now gets all the elements of the vector "vec"
caution

Only problem in above code is it can only be used during Initialisation not to update existing deque

insert() to copy vector to deque

info

Synatx: dequeName.insert(dequeName.postion, vec.startingPoint, vec.enddlingPoint) Example: dq.insert(dq.end(), vec.begin(), vec.end());

  • Here dequeName.position can be dq.end(), dq.begin()or dq.begin() + 3 ` any index of deque where the elements are to be inserted.
  • vec.startingPoint can be vec.begin() or vec.begin() + 2 or vec.end() - 3
  • vec.endingPoint can be vec.end() or vec.end() - 2 or vec.begin() + 8
// vector "vec" is given

deque<int> dq; // empty "deque" initialised
dq.insert(dq.end(), vec.begin(), vec.end());

Refer: https://en.cppreference.com/w/cpp/container/deque/insert


All vector methods

Refer: deque method same as All vector methods

insert(dq.position(), vec.start(), vec.end())

tip

Similar Must refer: vector insert() article


deque special Methods

emplace_front()

  • Alternative push_front()

pop_front()