21xrx.com
2024-11-05 14:41:00 Tuesday
登录
文章检索 我的文章 写文章
C++实现字符串每个字符出现次数的统计
2023-07-07 02:50:49 深夜i     --     --
C++ 字符串 字符 出现次数 统计

在日常的编程开发中,我们经常需要对字符串进行字符出现次数的统计。C++作为一种强大的编程语言,提供了简单易用的方法实现字符串每个字符出现次数的统计。

C++中提供了字符串类`string`,它封装了很多常用的操作,如字符串拼接、子字符串查找和替换等。对于字符出现次数的统计,我们可以利用`string`类中的成员函数`size()`和`count()`来实现。

首先,我们需要定义一个包含所有字符的字符串,以便对每个字符进行遍历和统计操作。例如,下面的代码定义了一个包含26个英文字母的字符串。


string alphabet = "abcdefghijklmnopqrstuvwxyz";

接下来,我们可以定义一个函数来实现字符串每个字符出现次数的统计。该函数接收一个字符串作为参数,并返回一个映射表,其中键是字符,值是字符出现的次数。


map<char, int> countChars(string str) {

  map<char, int> counts;

  for (char c : alphabet) {

    int count = count(str.begin(), str.end(), c);

    counts[c] = count;

  }

  return counts;

}

在上述代码中,我们先创建了一个类型为`map `的变量`counts`,用于存储每个字符出现的次数。然后,我们使用`for`循环遍历`alphabet`字符串中的所有字符,并调用`count()`函数来统计它们在`str`字符串中出现的次数。最后,我们将当前字符和其出现次数添加到`counts`映射表中。

最后,我们可以在主函数中调用`countChars()`函数来测试字符串每个字符出现次数的统计效果。如下所示。


int main() {

  string str = "hello world";

  map<char, int> counts = countChars(str);

  for (auto pair : counts)

    cout << pair.first << ": " << pair.second << endl;

  

  return 0;

}

在上述代码中,我们定义了一个字符串`str`,并调用`countChars()`函数来获取每个字符的出现次数。然后,我们使用`for`循环遍历`counts`映射表,并输出每个字符和其出现次数。

通过上述方法,我们可以轻松地实现字符串每个字符出现次数的统计,使我们在实际开发中更加高效地处理字符串相关的问题。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复