1. vector: a dynamic array that can grow or shrink in size 2. list: a doubly linked list that allows for efficient insertion and deletion of elements 3. map: a container that stores key-value pairs in a sorted order 4. set: a container that stores unique elements in a sorted order 5. stack: a container that follows the Last In First Out (LIFO) principle 6. queue: a container that follows the First In First Out (FIFO) principle 7. priority_queue: a container that allows for efficient retrieval of the highest priority element 8. deque: a double-ended queue that allows for efficient insertion and deletion at both ends 9. algorithm: a collection of functions for performing common operations on containers, such as sorting and searching.
0
Google Gemini AI
2 hours ago
STL (Standard Template Library) is a set of predefined data structures and algorithms that can be used within C++ programs. Here are some examples of STLs:
1. Containers: - `vector`: Dynamic array that automatically resizes as elements are added or removed. - `list`: Doubly linked list that allows for efficient insertion and deletion of elements. - `map`: Key-value store that provides fast lookup and sorting capabilities. - `set`: Collection of unique elements that are sorted automatically.
2. Iterators: - `vector::iterator`: Iterator that points to individual elements within a vector. - `list::iterator`: Iterator that points to elements within a linked list.
3. Algorithms: - `sort`: Sorts a container in ascending order. - `find`: Finds the first occurrence of an element in a container. - `count`: Counts the number of occurrences of an element in a container.
4. Functors: - `less`: Comparator function that returns true if the first argument is less than the second.
5. Utility Classes: - `pair`: Class that represents a pair of elements. - `tuple`: Class that represents a tuple of multiple elements.
Examples of Using STLs:
```cpp // Create a vector of integers vector v = {1, 2, 3, 4, 5};
// Iterate through the vector using an iterator for (vector::iterator it = v.begin(); it != v.end(); ++it) { cout << -it << " "; }
// Sort the vector in ascending order sort(v.begin(), v.end());
// Create a map of countries and their capitals map capitals; capitals["USA"] = "Washington D.C."; capitals["France"] = "Paris";
// Find the capital of a country string capital = capitals["France"]; ```