C++ Algorithm unique()C++ Algorithm unique() function is used to transform a sequence in such a way that each duplicate consecutive element becomes a unique element. The first version uses operator== to compare the elements and the second version uses the given binary predicate pred. SyntaxParameterfirst: A forward iterator pointing the position of the first element in the range to be scanned for duplicate removal. last: A forward iterator pointing the position one past the final element in the range to be scanned for duplicate removal. pred: A user-defined predicate function object that defines the condition to be satisfied if two elements in a range are to be taken as equivalent. A binary predicate returns two arguments and returns true when satisfied and false when not satisfied. 0 Return valueA forward iterator pointing to the new end of the range[first, last) that contains no consecutive duplicates. ComplexityComplexity is linear in the range [first, last): compares each pair of consecutive elements, and performs assignment operation on some of them. Data racesThe object in the range [first, last) are accessed and potentially modified. Exception safetyThis function throws an exception if any of pred, the element comparisons, the element assignments or the operations on iterator throws an exception. Note: The invalid parameters cause an undefined behavior.Example 1Let's see the simple example to demonstrate the use of unique(): Output: 1 2 3 4 5 6 7 Example 2Let's see another simple example: Output: myvector contains: 10 20 30 20 10 Example 3Let's see another simple example: Output: unsorted unique : 2,5,3,1,2,4,2,1,4,3 sorted unique : 1,2,3,4,5 Example 4Let's see another simple example: Output: 1 2 3 4 5 6 7 wanna go to space? Example 5Let's see another example: Output: Vector v1 is ( 5 -5 5 -5 5 -5 5 -5 4 4 4 4 7 ). Removing adjacent duplicates from vector v1 gives ( 5 -5 5 -5 5 -5 5 -5 4 7 ). Removing adjacent duplicates from vector v1 under the binary predicate mod_equal gives ( 5 4 7 ). Removing adjacent elements satisfying the binary predicate mod_equal from vector v1 gives ( 5 7 ). Next TopicC++ Algorithm |
We provides tutorials and interview questions of all technology like java tutorial, android, java frameworks
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India