统计数组中出现次数最多的元素并输出
来源:互联网 发布:阿里云404页面设置 编辑:程序博客网 时间:2024/05/17 10:42
实验过程中遇到一个实际问题:需要统计出10次计数的值中出现最多的一个数,比如输入34 35 35 35 34 35 35 35 34 33 十个数,要求最终输出35.如果出现两个数同样多,则输出两个元素中较小的那一个(也可以是较大的那一个,但是必须确定是其中一种)。
代码中采用5个元素以简化:
#include <stdio.h>int main(){int n = 5;int a[5] ={31,31,32,32,32};//most :出现最多的数int i,j,most,count[2] = {1,1};//初始化为第一个数most = a[0];for (i = 0;i < n;i++){for(j = i+1;j < n;j++){if (a[i] == a[j]){count[0]++;}}if(count[0] > count[1]){count[1] = count[0];most = a[i];}else if (count[0] == count[1]) { if(most > a[i]) { most = a[i]; } }count[0] = 1;}printf("%d\n",most );return 0;}这个是在百度基础上修改而成的算法,效率较低,但是满足我在实验中的需求,因此贴出来以备参考。
实验中的两层循环类似冒泡法:
- 首先从第一个元素a[0]开始,让他和a[1]~a[4]相比,如果相同,则计数加一,即count[0]++,每循环一轮内循环,可以统计一个元素的个数;
- 如果当前元素个数比上一个元素的个数多,则刷新寄存的个数为当前个数,刷新保存的元素为当前元素;
- 如果当前元素个数和上一个元素的个数相同,则比较两个元素大小,保存较小的一个元素;
- 循环结束输出保存的元素即可,即代码中的most。
0 0
- 统计数组中出现次数最多的元素并输出
- 去除数组中重复项,并统计重复出现次数最多的元素及重复次数
- 统计字符串中出现次数最多的字母并输出
- 统计一个无序数组中出现次数最多的元素
- 统计一个无序数组中出现次数最多的元素
- 输出数组中出现次数最多的元素
- js统计一个字符串出现最多的字母(或者数组中出现次数最多的元素)
- 输出列表中出现次数最多的元素
- LINQ 获取当前数组中出现次数最多的元素
- 数组中出现次数最多的元素_legend
- 整型数组中出现次数最多的元素
- 数组中出现次数最多/最少的元素
- 判断数组中出现次数最多的元素
- 找出数组中重复次数最多的元素并打印
- 找出数组中重复次数最多的元素并打印
- 找出数组中重复次数最多的元素并打印
- python 统计数组中元素出现次数并进行排序
- js判断字符串中出现次数最多的字符 并统计出现次数
- 【项目中---WebView】Webview打开本地图片文件选择解决方案
- Relation Extraction中SVM分类样例unbalance data问题解决 -松弛变量与惩罚因子
- poj 3264
- linphone函数ms_filter_link分析
- android The specified child already has a parent. You must call removeView() on the child's parent f
- 统计数组中出现次数最多的元素并输出
- A标签尽量不用#号
- 获取当前工作目录
- 有用的工具
- JSP脚本元素
- SVProgressHUD 到指定位置
- 关于json的问题
- listview如何加载动画,实现每个item都有效果
- Mybaits深入了解(二)—-入门实例