如何用C++ 设计一个算法对字符串中每个字符出现的频率进行统计??

私有数据成员char*str:指向要统计的字符串。char(*p)[2]:动态分配二维空间,用以存放str所指字符串中出现字符及其出现的次数(次数在存放是时,用该数字对应... 私有数据成员
char *str: 指向要统计的字符串。
char (*p)[2]:动态分配二维空间,用以存放str所指字符串中出现字符及其出现的次数(次数在存放是时,用该数字对应的ASCII值存放;在输出次数时,输出该ASCII字符对应的ASCII值即可)。
int size:存放字符串中出现的所有不同的字符的个数。
公有成员函数
CString(char *s):根据s参数初始化数据成员str;p和size初始值为0。
void Count():p根据s所指字符串长度分配空间。然后把str所指字符串中的每个字符放入p数组中,设置每个字符出现次数为1.根据p数组统计不同字符出现的频率,并求得size的实际大小。最后根据size的实际大小,重新分配p所指空间,并把不同字符及出现次数重新放回p数组。
void show():屏幕显示字符串、字符串的每个字符和与之对应的次数。
~CString():释放动态分配的空间。
(3) 在主程序中定义字符串char s[]=“abdabcdesffffd”.定义一个CString类对象test,用s初始化test,完成对该类的测试。
展开
 我来答
kaixingui2012
推荐于2018-02-28 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6453万
展开全部

计算机中一个字符只占一个字节,有效的字符个数最多不超过128个,因此,可以定义一个128位的数组来存储不同字符的出现次数,用数组下标来表示相应的字符。

参考代码:

jasonerika
2009-10-11 · TA获得超过440个赞
知道答主
回答量:168
采纳率:0%
帮助的人:168万
展开全部
用过string没有?不需要定义指针什么的。
#include<string>
string a="abdabcdesffffd”;
string b=a;
......
没试过赶快看。
”对字符串中每个字符出现的频率统计“,你这里的字符是笼统的(数字,字母,其他),如果追究起来,还有用hash,或者map<string,int>.一楼显然小看了这道题。这道题测试数据强大的话,只能hash,不是那么简单的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
哥们儿会_臭臭
2015-09-09 · TA获得超过876个赞
知道小有建树答主
回答量:421
采纳率:50%
帮助的人:188万
展开全部
字母不多加大小写啥的也不多,直接扫一遍计数就好了。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
极天异云
2009-10-09 · TA获得超过1054个赞
知道小有建树答主
回答量:1170
采纳率:42%
帮助的人:396万
展开全部
这太简单了吧。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式