您的位置:首页 > 其它

找出字符串里出现最多的第一个字母

2013-03-27 09:55 162 查看
void findMostFrequencyChar(char *str)
{
//将字符串26个字母的出现的次数用一个26个元素的数组存储
int bit_map[26]={0};
long len = strlen(str);
int i;
for(i=0; i<len; i++)
{
bit_map[str[i]-'a']++;
}
//找出出现最多的次数
int max,mostTime;
for (int c=0; i<25; i++) {
max = c;
for (int d=c+1; d< 25; d++) {
if (bit_map[d] > bit_map[max]) {
max=d;
}
}
}
mostTime = bit_map[max];
//输出第一个出现次数最多的字母
for(i=0; i<25; i++)
{
if(bit_map[str[i]-'a'] == mostTime)
{
printf(" %c ",str[i]);
break;
}
}

}

int main()
{
char c[]="ababccgccdeffz";
findMostFrequencyChar(c);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: