Mega Code Archive

 
Categories / C++ Tutorial / STL Algorithms Modifying Sequence Operations
 

Remove adjacent duplicates

#include <string> #include <iostream> #include <algorithm> using namespace std; int main() {     const string hello("Hello, how are you?");     string s(hello.begin(),hello.end());     // iterate through all of the characters     string::iterator pos;     for (pos = s.begin(); pos != s.end(); ++pos) {         cout << *pos;     }     cout << endl;     /* remove adjacent duplicates      * - unique() reorders and returns new end      * - erase() shrinks accordingly      */     s.erase (unique(s.begin(), s.end()),  s.end());     cout << "no duplicates: " << s << endl; } Hello, how are you? no duplicates: Helo, how are you?