当前位置: 首页 > article >正文

c语言编写程序,找出出现次数最高的数字 数字范围1-1000 时间复杂度不超过O(n)

以下是一个使用C语言编写的程序,可以找出1到1000之间出现次数最高的数字,时间复杂度不超过O(n)。

#include <stdio.h>

int main() {
    int occurrences[1001] = {0};
    int max_occurrences = 0;
    int max_number = 0;

    // 输入一组数字,以-1作为结束标志
    int number;
    printf("请输入一组数字,以-1作为结束标志:\n");
    while (1) {
        scanf("%d", &number);
        if (number == -1) {
            break;
        }

        // 记录数字出现的次数
        occurrences[number]++;
        
        // 更新最大出现次数和对应的数字
        if (occurrences[number] > max_occurrences) {
            max_occurrences = occurrences[number];
            max_number = number;
        }
    }

    printf("出现次数最多的数字是 %d,共出现了 %d 次。\n", max_number, max_occurrences);

    return 0;
}

该程序首先创建了一个长度为1001的数组occurrences,用于记录数字的出现次数。然后,程序要求用户输入一组数字,以-1作为结束标志。在每次输入一个数字后,程序会将该数字对应的数组元素加1,并与当前的最大出现次数进行比较,如果大于最大出现次数,则更新最大出现次数和对应的数字。当用户输入-1时,程序退出循环,并输出出现次数最多的数字和其出现次数。


http://www.kler.cn/news/315041.html

相关文章:

  • html,css基础知识点笔记(二)
  • VB中的垃圾回收(Garbage Collection)机制
  • 二叉搜索树(附源码C++)
  • 将sqlite3移植到开发板上
  • frp内网穿透部署
  • vue一级、二级路由设计
  • 论文阅读-Demystifying Misconceptions in Social Bots Research
  • Ubuntu20.04 搜索不到任何蓝牙设备
  • 【SpringCloud】优雅实现远程调用 - OpenFeign
  • 鸿蒙【项目打包】- .hap 和 .app;(测试如何安装发的hap包)(应用上架流程)
  • 二二复制模式小程序商城开发
  • Python中的IPython:交互式的Python shell
  • 算法题之宝石与石头
  • 微服务、云计算、分布式开发全套课程课件,来原于企培和多年大厂工作提炼
  • el-form动态标题和输入值,并且最后一个输入框不校验
  • Python 课程16-OpenCV
  • C++门迷宫
  • C++高精度计时方法总结(测试函数运行时间)
  • Axios基本语法和前后端交互
  • 【数据结构】排序算法---计数排序
  • Cpp类和对象(中续)(5)
  • Rasa对话模型——做一个语言助手
  • Qt窗口——QToolBar
  • JVM常见面试题(三):类加载器,双亲委派模型,类装载的执行过程
  • python中ocr图片文字识别样例(二)
  • Spring MVC设置请求头和响应头的Header
  • Unity DOTS物理引擎的核心分析与详解
  • 植物大战僵尸【源代码分享+核心思路讲解】
  • [每日一练]MySQL中的正则表达式的应用
  • Day 9:1306 跳跃游戏III