How to print array elements that appear more than once in C++

1 Answer

0 votes
#include <iostream>
#include <map>

void printMoreThanOnce(int arr[], int len) {
   std::map<int, int> freq;

   for(int i = 0; i < len; i++){
      freq[arr[i]]++; 
   }
   
   for (auto it = freq.begin(); it != freq.end(); it++) {
      if (it->second > 1)
         std::cout << it->first << " ";
   }
}

int main() {
    int arr[] = {1, 6, 3, 1, 8, 9, 9, 1, 3, 4};

    printMoreThanOnce(arr, sizeof(arr)/sizeof(arr[0]));
}



/*
run:

1 3 9 

*/

 



answered Jul 18, 2020 by avibootz

Related questions

1 answer 156 views
1 answer 199 views
1 answer 134 views
1 answer 142 views
1 answer 138 views
1 answer 212 views
...