Я делал базовую программу, чтобы найти максимальную, минимальную, медианную, дисперсию, режим и т.д. вектора. Все прошло нормально, пока я не добрался до режима.
Как я вижу это, я должен иметь возможность прокручивать вектор, и для каждого числа, которое происходит, я увеличиваю ключ на карте. Нахождение ключа с наивысшим значением было бы тем самым самым большим. Сравнение с другими ключами подскажет мне, если это один или несколько вариантов ответа.
Вот кусок кода, который вызывал у меня столько проблем.
map<int,unsigned> frequencyCount;
// This is my attempt to increment the values
// of the map everytime one of the same numebers
for(size_t i = 0; i < v.size(); ++i)
frequencyCount[v[i]]++;
unsigned currentMax = 0;
unsigned checked = 0;
unsigned maax = 0;
for(auto it = frequencyCount.cbegin(); it != frequencyCount.cend(); ++it )
//checked = it->second;
if (it ->second > currentMax)
{
maax = it->first;
}
//if(it ->second > currentMax){
//v = it->first
cout << " The highest value within the map is: " << maax << endl;
Здесь можно увидеть всю программу. http://pastebin.com/MzPENmHp