请对输入的一组数据(0~9)进行排序,规则:数据出现次数多的,数字大的排在前面。
2014-06-24 21:11
411 查看
</pre>请对输入的一组数据(0~9)进行排序,规则:数据出现次数多的,数字大的排在前面。<pre name="code" class="cpp">#include<iostream> using namespace std; struct num { int value; int cut; }; int comp(num a,num b) { if(a.cut!=b.cut) return a.cut>b.cut; else return a.value>b.value; } void bubsort(num a[],int len) { for(int i=0; i<len; i++) for(int j=0; j<len-i-1; j++) if(!comp(a[j],a[j+1])) { num temp; temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } int main() { int it; num s[10]; for(int i=0; i<10; i++) { s[i].value=i; s[i].cut=0; } for(int i=0; i<20; i++) { cin>>it; s[it].value=it; (s[it].cut)++; } bubsort(s,10); for(int i=0; i<10; i++) { cout<<s[i].value<<" "<<s[i].cut<<endl; } } /* 1 2 3 4 5 1 2 5 6 7 1 2 8 9 0 7 8 9 0 0 */
F2:
#include<iostream> #include<algorithm> using namespace std; int main() { int a[10]; for(int i=0;i<10;i++) { a[i]=i; } for(int k=0;k<20;k++) { int i; cin>>i; a[i]+=10; } sort(a,a+10,greater<int>()); for(int i=0;i<9;i++) cout<<(a[i]%10)<<" "<<a[i]/10<<endl; }
相关文章推荐
- 编写一个程序,对用户输入的任意一组数字字符如{3,1,4,7,2,1,1,2,2},输出其中出现次数最多的字符,并显示其出现次数。如果有多个字符出现次数均为最大且相等,则输出最先出现的那个字符和它出现
- 输入一个数组,对数组进行排序,并输出该数组中重复元素出现的次数
- 在命令行任意输入一组数字(0~9),然后统计这组数据中每个数字出现的个数,然后将统计个数逆序输出
- 输入一组整型数据,以逗号隔开,寻找出现次数大于总数一半的数
- java编程之计算16位长整型数字中0-9出现次数(从对话窗体输入数据)
- (使用STL自带的排序函数进行编程7.3.14)UVA 10062 Tell me the frequencies!(求一个字符出现的次数(包括字母和数字)&&按出现的次数降序)
- java编程之计算16位长整型数字中0-9出现次数(从命令窗输入数据)
- (使用STL自带的排序功能进行排序)UVA 10905 Children's Game(求一组数据所能拼出的最大数字串)
- 对于给定的一个字符串,统计其中数字字符出现的次数。输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
- 简单题练习——数字在排序数组中出现的次数
- 消除原理____假设数组中有一个数字出现的次数超过了数组长度的一半,试编程找出这个数字(qosrt 快速排序 哈希)
- 在排序数组中,找出给定数字的出现次数.比如 [1, 2, 2, 2, 3] 中2的出现次数是3次。
- 使用“冒泡法”对输入数字进行排序
- 在排序数组中,找出给定数字的出现次数
- 1486. 统计数字(先排序,再遍历数组统计出现次数)
- 规则文本数据文件根据关键字段进行排序的实现
- 在排序数组中,找出给定数字的出现次数
- 假设数组中有一个数字出现的次数超过了数组长度的一半,试编程找出这个数字(消除 qosrt 快速排序 哈希)
- 统计用户输入的一串数字中每个数字出现的次数
- 在排序数组中,找出给定数字出现的次数。比如【1,2,2,2,3】中2的出现次数为3次