统计字符串中(汉子)每个字出现的次数---哈希算法

例如:

输入我是中国人,我爱中国。

输出每个汉字的出现个数。

解题分析:

可以考虑的是这里是需要存储字符,还有出现的次数。

还有一个重点是如何存储汉子,汉子每个汉字应该占两个字节。

因此每个汉字存入两个char的数组中。

在这里可以用哈希算法进行储存,这是一种映射关系,可以方便的统计每个汉字出现的次数。


代码:


#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int hash[100][100];
int main()
{
char str[10000];
scanf(“%s”, str);
for(int i = 0; i < strlen(str); i+=2)
{
hash[ -(str[i]) ][ -(str[i+1]) ]++;
}
for(int i = 0; i < 100; i++)
{
for(int j = 0; j < 100; j++)
{
if(hash[i][j] != 0)
printf(“%c%c  %d\n”, -i, -j, hash[i][j]);
}
}
return 0;
}


    原文作者:哈希算法
    原文地址: https://blog.csdn.net/u012965373/article/details/39648695
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞