fork download
  1. #include <iostream>
  2. #include <list>
  3. #include <iterator>
  4. using std::list;
  5. using std::cout;
  6.  
  7.  
  8. void removeDuplicates(list<char> &myList);
  9.  
  10. int main() {
  11. // your code goes here
  12. list <char> l;
  13. l.push_back('a');
  14. l.push_back('b');
  15. l.push_back('a');
  16. l.push_back('a');
  17. l.push_back('a');
  18.  
  19. removeDuplicates(l);
  20.  
  21. return 0;
  22. }
  23.  
  24. void removeDuplicates(list<char> &myList)
  25. {
  26. list<char>::iterator itr;
  27.  
  28. for (itr = myList.begin(); itr != myList.end();)
  29. {
  30.  
  31. if (tolower(*itr) == tolower(*std::prev(itr)))
  32. {
  33. itr = myList.erase(itr);
  34. }
  35. else
  36. {
  37. ++itr;
  38. }
  39. }
  40.  
  41. for (itr : myList)
  42. cout << itr <<" ";
  43.  
  44. }
Success #stdin #stdout 0s 3412KB
stdin
Standard input is empty
stdout
a b a