C++找出字符串中出现最多的字符和次数,时间复杂度小于O(n^2)

作者:蜗牛201 时间:2023-06-22 07:32:31 

已知字符串“aabbbcddddeeffffghijklmnopqrst”编程找出出现最多的字符和次数,要求时间复杂度小于O(n^2)

/********************************************************
Copyright (C), 2016-2017,
FileName: main9
Author: woniu201
Description:求字符串中出现次数最多的字符和次数
********************************************************/
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void search(char* pData, int len)
{
char counts[1024] = {0}; //存放原始数据作为为索引出现的次数
char bufMax[1024] = {0}; //用于存放出现次数最多的字符
int max = 0;  //出现次数最多的字符
for (int i=0; i<len; i++)
{
counts[pData[i]] ++;
}
for (int i=0; i<1024; i++)
{
if (counts[i] > max)
{
max = counts[i];
bufMax[0] = i;
}else if ((counts[i] == max) && (counts[i] !=0))
{
bufMax[strlen(bufMax)] = i;
}
}
printf("出现最多的字符分别为:");
for (int i=0; i<strlen(bufMax); i++)
{
printf("%c ", bufMax[i]);
}
printf("\n");
printf("出现最多的字符的次数:%d\n", max);
}
int main()
{
char* srcData = "aabbbcddddeeffffghijklmnopqrst";
search(srcData, strlen(srcData));
getchar();
return 1;
}

来源:https://blog.csdn.net/woniu211111/article/details/78401355

标签:c++,字符串,字符,出现次数
0
投稿

猜你喜欢

  • DevExpress根据条件设置GridControl RepositoryItem是否可编辑

    2023-03-21 14:53:30
  • Java编译器用maven打war包出错解决办法

    2022-01-18 06:13:29
  • springboot集成elasticsearch7的图文方法

    2022-05-15 19:46:11
  • c#程序定期把内存信息记录到log日志示例

    2022-01-11 16:33:31
  • monkeyrunner之安卓开发环境搭建教程(1)

    2023-02-24 06:24:22
  • Android开发之FloatingActionButton悬浮按钮基本使用、字体、颜色用法示例

    2022-12-21 05:38:26
  • spring mvc4的日期/数字格式化、枚举转换示例

    2021-11-07 09:49:11
  • Android 类似UC浏览器的效果:向上滑动地址栏隐藏功能

    2023-01-29 05:01:41
  • 简单的excel导入导出示例分享

    2023-11-02 00:02:52
  • 在spring boot3中使用native image的最新方法

    2022-05-18 17:43:14
  • c#实现md5加密示例

    2023-04-19 16:37:11
  • C#手工双缓冲技术用法实例分析

    2023-05-09 07:13:44
  • GC算法实现垃圾优先算法

    2023-11-07 17:25:15
  • C#获取计算机硬件与操作系统的相关信息

    2022-12-12 07:11:36
  • C#实现简单的计算器小功能

    2023-05-13 06:46:11
  • Android实现过渡动画、引导页 Android判断是否第一次启动App

    2023-09-08 06:08:11
  • Mybatis多表关联查询的实现(DEMO)

    2022-05-03 14:50:03
  • Springboot使用@Valid 和AOP做参数校验及日志输出问题

    2023-12-05 04:39:12
  • 解决java main函数中的args数组传值问题

    2021-06-24 12:46:13
  • SpringBoot内部调用事务不起作用问题的解决方案

    2023-11-17 13:38:35
  • asp之家 软件编程 m.aspxhome.com