Вычисление распределения частот для вектора целых

Я работаю над проектом, и мне нужно рассчитать частотное распределение вектора целочисленных значений, которое будет вводить пользователь. Распределение будет разделено на 10 диапазонов. Я просто не могу понять, как правильно пройти вектор и настроить минимальное и максимальное значения каждого интервала. Вот что я написал, я знаю, что это далеко (также, x это имя вектора:

double range = max - min;
double interval = ceil(range / 10);
double frequency = 0.0;
for (vector<int>::iterator it = x.begin(); it < x.end(); it++)
{
if (*it > min)
{
min = (min + interval);
min = *it;
}
if (*it < max)
{
max = min + interval;
max = *it;
}
if (*it >= min && *it <= max)
++frequency;

1

Решение

Разделите вектор на хэш-карту векторов. Отодвиньте значения из исходного вектора в набор сегментов и используйте std :: min_element и std :: max_element, чтобы найти наименьшее / наибольшее из каждого диапазона.

Я бы опубликовал псевдокод, но я на своем телефоне.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector