Javatpoint Logo
Javatpoint Logo

C++ Algorithm is_partitioned()

C++ Algorithm is_partitioned() is used to test to see if a range [first, last) is partitioned according to a predicate. In other words, all the elements in the range that satisfies the predicate are at the beginning of the sequence.

If the range is empty then it returns true.



first: An input iterator pointing to the first element in the range.

last: An input iterator pointing to the past last element in the range.

pred: A user-defined unary predicate function that returns true for the elements expected to be found in the beginning of the range.

Return value

This function returns true if the range is empty or is partitioned by given predicate pred, otherwise it returns false.


Complexity is linear in the range [first, last): calls pred for each element until a mismatch is found.

Data races

The object in the range [first, last) are accessed.

Each element is accessed exactly once.


This function throws an exception if either pred or an operation on iterator throws an exception.

Please note that invalid parameters cause an undefined behavior.

Example 1

Let's see the simple example to demonstrate the use of is_partitioned():


Before Partition: 1 2 3 4 5 
After partition : 4 2 3 1 5 

Is it partitioned?
Yes,It is Partitioned

Example 2

Let's see another simple example:


All the even no. are present before odd no.
All the even no. are not present before odd no.

Example 3

Let's see another simple example:


false true false 

Example 4

Let's see another simple example:


Before Partition: 11 2 3 4 15 12 
After partition: 4 2 3 11 15 12 

Is it partitioned?
Yes, It is Partitioned.

Next TopicC++ Algorithm

Youtube For Videos Join Our Youtube Channel: Join Now


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA