cpp/algorithm/move backward

Moves the elements from the range, to another range ending at. The elements are moved in reverse order (the last element is moved first), but their relative order is preserved.

The behavior is undefined if is within (, ].  must be used instead of  in that case.

Return value
Iterator in the destination range, pointing at the last element moved.

Complexity
Exactly move assignments.