Задача «Гистограмма»
Необходимо разработать класс для работы с гистограммой (частотным словарём).
Входные данные
Файл с последовательностью каких-либо идентификаторов (например, чисел). Пример фрагмента файла:
... 1 2 3 1 2 3 56 5 6 7 5 6 7 ...
Задача
Реализовать класс «Гистограмма» с поддержкой следующей функциональности:
- Хранение словаря пар «идентификатор — количество вхождений».
- Создание гистограммы по набору идентификаторов.
- Создание гистограммы по другой гистограмме (конструктор копирования).
- Возможность итерирования по гистограмме. Методы
begin() и end().
- Сложение с другой гистограммой (перегрузка
operator+).
- Вычитание другой гистограммы (перегрузка
operator-).
- Проверка равенства двух гистограмм (перекрытие
operator==).
Тестирование
Необходимо реализовать тесты на каждый метод.