Question #76527

Write a function max_freq that takes in a string and returns maximum frequency of the characters in the string, i.e. the highest number of occurrences of a character.

Hint: You can use a std::map to maintain a count of the characters.

#include <string>

using namespace std;

int max_freq(string str) {
//code
}

Expert's answer

#include <string>
#include <map>

int max_freq(std::string str)
{
std::map<char, int> counts;
int maxCount = 0;
for (auto ch : str)
{
auto insertResult = counts.insert(std::pair<char, int>(ch, 1));
if (!insertResult.second)
insertResult.first->second++;

maxCount = std::max(maxCount, insertResult.first->second);
}
return maxCount;
}
LATEST TUTORIALS
APPROVED BY CLIENTS