- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Print numbers in descending order along with their frequencies
Given with an array of int elements, the task is to arrange the elements in descending order and finding their occurrences.
Input : arr[]={1,1,1,2,2,2,3,3,4,5,6,7,7} Output : 7 occurs: 2 6 occurs: 1 5 occurs: 1 4 occurs: 1 3 occurs: 2 2 occurs: 3 1 occurs: 3
Algorithm
START Step 1 -> input array with elements in sorting order Step 2 -> calculate size of an array by sizeof(a)/sizeof(a[0] Step 3 -> store size in a variable say en Step 4 -> Loop For i=siz-1 and i>0 and i== IF a[i]!=a[i-1] Set to=en-1 Print a[i] and to Set en=i End Step 5 -> print a[0] and to STOP
Example
#include<stdio.h> int main() { int a[]={1,1,1,2,2,2,3,3,4,5,6,7,7}; int siz,i,en,st,to; siz=sizeof(a)/sizeof(a[0]); en=siz; for(i=siz-1;i>0;i--) { if(a[i]!=a[i-1]) { to=en-i; printf("%d occurs: %d
",a[i],to); en=i; } } to=en; printf("%d occurs: %d
",a[0],to); }
Output
if we run the above program then it will generate the following output
7 occurs: 2 6 occurs: 1 5 occurs: 1 4 occurs: 1 3 occurs: 2 2 occurs: 3 1 occurs: 3
Advertisements