# **[](https://en.cppreference.com/w/cpp/header/vector)** provides `std::vector`, a dynamic array with O(1) amortized append, O(1) random access, and O(n) insertion/deletion in the middle. It grows exponentially as you push elements, minimizing reallocations. Use `vector` for almost any sequence of elements; it's the default choice for ordered containers. ## Example This example constructs a vector, appends elements, sorts it, and iterates through the result. ```cpp // compile: g++ -std=c++11 -o vectorexample vectorexample.cpp // run: ./vectorexample // description: vector construction and operations #include #include #include int main() { std::vector v = {3, 1, 4, 1, 5}; std::cout << "size: " << v.size() << "\n"; std::cout << "capacity: " << v.capacity() << "\n"; v.push_back(9); std::sort(v.begin(), v.end()); std::cout << "sorted: "; for (int x : v) std::cout << x << " "; std::cout << "\n"; return 0; } ```