Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. #include <bitset>
  2. #include <cstring>
  3.  
  4. void removeDuplicate( char *s ) {
  5.     if( s == NULL ) return;
  6.     int n = std::strlen(s);
  7.     if( n < 2 ) return;
  8.  
  9.     std::bitset<256> exist;
  10.     exist.reset();
  11.     exist.set(s[0]);
  12.  
  13.     int tail=1;
  14.     for( int i=1; i<n; ++i )
  15.         if( !exist.test(s[i]) ) {
  16.             s[tail++] = s[i];
  17.             exist.set(s[i]);
  18.         }
  19.  
  20.     for( int i=tail; i<n; ++i )
  21.         s[i] = 0;
  22. }