In O(n) time complexity, find the frequency of elements in a given array.
Step 1: let int array to store data.
Step 2: create function whit 2 parameter.
Step 3: check element arr[i]= arr[i]-1
Step 4: arr[arr[i]%10]= arr[arr[i]%10]+10;
Step 5: return frequency.
Step 6: Stop.
#include <iostream>
using namespace std;
void printfrequency(int arr[], int n)
{
int i = 0;
for (i = 0; i < n; i++)
arr[i] = arr[i] - 1;
for (i = 0; i < n; i++)
arr[arr[i] % 10] = arr[arr[i] % 10] + 10;
for (i = 0; i < 10; i++)
cout << i + 1 << " is " << arr[i] / 10 << endl;
}
int main()
{
int arr[] = {2, 3, 3, 2, 5, 6, 7, 7, 7, 8, 8, 9, 9};
int n = sizeof(arr) / sizeof(arr[0]);
printfrequency(arr, n);
return 0;
}
0 Comments