![]() |
VOOZH | about |
The std::min_element() in C++ is an STL algorithm that is used to find the minimum element in a given range. This range can be array, vector, list or any other container. It is defined inside the <algorithm> header file. In this article, we will learn about the std::min_element() in C++.
Example: Below example demonstrates how to find the minimum element in a vector using min_element() method:
1 1
std::min_element(first, last, comp);
We can find the minimum element of the given range using std::min_element().
1
Time Complexity: O(n), where n is the number of elements in array.
Auxiliary Space: O(1)
When there are multiple minimum elements present in the range, std::min_element() returns the iterator to the first minimum element.
Index: 1
Time Complexity: O(n), where n is the number of elements in deque.
Auxiliary Space: O(1)
We have to use a custom comparator to determine how to compare user-defined data types based on any of their properties.
Ashok 11
Time Complexity: O(n), where n is the number of elements in the vector.
Auxiliary Space: O(1)
std::min_element() implements a linear search algorithm to find the smallest element in the range. It compares each element of the range one by one using the iterator/pointer provided to it as arguments. This is the reason why it gives O(n) linear time complexity.
std::min_element() is not specialized for sorted containers such as std::set, std::map, etc., and still compares all the elements of these containers to find the minimum element.