Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,933 questions

51,870 answers

573 users

How to get array elements that appear more than once in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h>
 
void getMoreThanOnce(int arr[], int len, int freq[]) {
   for (int i = 0; i < len; i++) {
         freq[arr[i]]++;
   }
}
  
int main() {
    int arr[] = {1, 6, 3, 1, 8, 9, 9, 1, 3, 4};
  
    int len = sizeof(arr)/sizeof(arr[0]);
    int *freq = (int *)calloc(sizeof(int), 10);
     
    getMoreThanOnce(arr, len, freq);
     
    for (int i = 0; i < 10; i++) {
      if (freq[i] > 1)
         printf("%3d", i);
    }
    
   free(freq);
}
 
 
 
/*
run:
 
1  3  9
   
*/

 



answered Jul 18, 2020 by avibootz
edited Jul 18, 2020 by avibootz

Related questions

1 answer 186 views
1 answer 142 views
1 answer 144 views
1 answer 110 views
1 answer 135 views
1 answer 154 views
...