实验过程中遇到一个实际问题:需要统计出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;
}

这个是在百度基础上修改而成的算法,效率较低,但是满足我在实验中的需求,因此贴出来以备参考。

实验中的两层循环类似冒泡法:

  1. 首先从第一个元素a[0]开始,让他和a[1]~a[4]相比,如果相同,则计数加一,即count[0]++,每循环一轮内循环,可以统计一个元素的个数;
  2. 如果当前元素个数比上一个元素的个数多,则刷新寄存的个数为当前个数,刷新保存的元素为当前元素;
  3. 如果当前元素个数和上一个元素的个数相同,则比较两个元素大小,保存较小的一个元素;
  4. 循环结束输出保存的元素即可,即代码中的most。

统计数组中出现次数最多的元素并输出相关推荐

  1. python统计数组中出现次数最多的元素

    python查找数组中出现次数最多的元素 方法1-np.argmax(np.bincount()) array = [0,1,2,2,3,4,4,4,5,6] print(np.bincount(ar ...

  2. python查找数组中出现次数最多的元素

    方法1-np.argmax(np.bincount()) 看一个例子 array = [0,1,2,2,3,4,4,4,5,6] print(np.bincount(array)) print(np. ...

  3. 利用HashMap找出数组中出现次数最多的元素及其次数

    我在牛客网上刷题时遇到了这道题目,因为初学Java不久,对Java的应用还不熟悉,刚开始用C语言做没做出来(我太菜了...),接着百度发现竟然可以用HashMap做,仔细一想发现这真是一个好办法(为什 ...

  4. Java实现找出数组中重复次数最多的元素以及个数

    /**数组中元素重复最多的数* @param array* @author shaobn* @param array*/public static void getMethod_4(int[] arr ...

  5. c语言找出一个数组中出现次数最多的那个元素,c语言找出数组中出现次数最多地那个元素...

    matlab中如何找出不同维度矩阵出现次数最多的数组并记录其个数 首先是胞矩阵中的序列问题,不妨假设AA{1}是一个多行两列的数据,AA{2}同例.程序如下clcclearallAA{1}=[12;2 ...

  6. java数组出现次数最多的数_找出数组中出现次数最多的那个数——主元素问题...

    方法一:以空间换时间,可以定义一个计数数组int count[101],用来对数组中数字出现的次数进行计数(只能针对数组中数字的范围1~100),count数组中最大的元素对应的下标,即为出现次数最多 ...

  7. 找出一个数组中出现次数最多的那个元素

    Description 找出一个数组中出现次数最多的那个元素 Input 多组输入,请处理到文件结束 每组第一行输入一个整数n(不大于20) 第二行输入n个整数 Output 找出n个整数中出现次数最 ...

  8. Python统计列表中重复次数最多的前N个元素

    from collections import Counter a = [1, 1, 7, 3, 6, 2, 5, 4, 4, 3, 9, 4, 4, 1] #统计列表中重复次数最多的前N个元素 N ...

  9. python counter 出现次数最少的元素_[PY3]——找出一个序列中出现次数最多的元素/collections.Counter 类的用法...

    问题 怎样找出一个序列中出现次数最多的元素呢? 解决方案 collections.Counter 类就是专门为这类问题而设计的, 它甚至有一个有用的 most_common() 方法直接给了你答案 c ...

  10. 贪心算法求解一个序列中出现次数最多的元素问题

    贪心算法求解一个序列中出现次数最多的元素问题 题目: 指定n个正整数,编写一个实验程序找出它们中出现次数最多的数.如果这样的数有多个,请输出其中最小的一个. 输入描述:输入的第1行只有一个正整数n(1 ...

最新文章

  1. 【学习干货】目标检测算法之SSD
  2. jquery 半透明遮罩效果 小结
  3. IDEA中PlantUML的使用
  4. 用Pytorch实现三个优秀的自然图像分割框架!(包括FCN、U-Net和Deeplab,可直接训练预测)
  5. android webview重绘,Android-怎么判断android中WebView滑动到了低端
  6. 关于spark的mllib学习总结(Java版)
  7. 智能市场变革,独辟蹊径的机器人营销
  8. HTML怎么去除数组的重复元素,js去除数组中重复元素并排序
  9. 从零开始学Pytorch(十七)之样式分格
  10. 5月25日-js操作DOM遍历子节点
  11. 俄罗斯一款地图软件无意曝光300多个军事基地
  12. 用C语言做九九乘法表
  13. android水波纹动画制作,flash动画制作实例:横向水波纹效果
  14. 【C语言】浅谈C语言数组%c%s打印逻辑及数组打印单个汉字
  15. Macbook变速播放视频
  16. 常见问题之Golang——verifying github.com/go-playground/assert/v2@v2.0.1/go.mod: checksum mismatch错误...
  17. 区块链:从理论走向实践--高盛公司(Glodman Sachs)发布过的报告
  18. atitit..国富论 在现代it企业项目管理中的作用attialx 总结---国富论读后感 attialx...
  19. 学3D建模要注意什么问题?入行好几年,踩过的坑后的经验
  20. 大学生计算机应用基础实验6,计算机应用基础实验6.doc

热门文章

  1. yum和apt-get 软件包管理器的用法及区别
  2. 四、分布式账本技术对比
  3. 如何在windows平台下使用hsdis与jitwatch查看JIT后的汇编码
  4. Unicode字符集和编码方式
  5. 10天学会phpWeChat——第一天:核心框架的目录结构
  6. linux网络 (二):无线网络操作
  7. 建立完善的日期定义表
  8. 江民科技召开临时董事会 王江民之子接手管理
  9. hihoCoder - 1075 开锁魔法III
  10. bookstrap必备的基础知识