Вход Блог
Строительство и ремонт
Репетиторы
Красота
Фрилансеры
Разные специалисты
Уход за животными
Тренеры
Автоинструкторы

Программирование — работа в Москве

Дата: 2022-12-22
Детали
Регион
Москва
Метро
Международная, Выставочная, Деловой центр, Деловой центр - МЦК
Занятость
без разницы
Стоимость
договорная
Дата публикации
2022-12-22
Описание
Язык программирования: C++ Домашнее задание Для решения этой задачи вам предстоит реализовать Фильтр Блума, который работает со строковыми объектами. Он поддерживает: Добавление строки в множество. Тест принадлежности строки к множеству объектов. Помимо этого вам требуется добавить поддержку расчета доли ложно-положительных срабатываний, то есть значения, которое показывает отношение количества тестов принадлежности, которые дали ложно-положительный результат, к общему числу поступивших тестов принадлежности. Реализуемый Вами класс BloomFilter должен содержать следующие методы и конструкторы: Конструктор, параметризуемый числом хеш-функций фильтра и числом ячеек фильтра. Деструктор. Метод add, который вставляет информацию о строке, с использованием хэш-функций, в множество. Принимает на вход значение строкового типа. Метод verify, который проверяет, существует ли строка в Фильтре Блума. Принимает на вход значение типа std::string, возвращает значение типа bool. В случае, если Фильтр Блума показывает, что строка в нём находится, но при этом она не добавлялась - необходимо инкрементировать счетчик ложно-положительных значений на единицу. Метод getFPRate, который возвращает отношение количества ложно-положительных срабатываний к сумме всех запросов к функции verify. Тип возвращаемого значения - double. Константный метод numberOfHashFunctions, который возвращает количество хеш-функций для данного фильтра. Константный метод numberOfBits, который возвращает количество ячеек в данном фильтре. Поскольку фильтр содержит информацию о количестве k k используемых хеш-функций, применяется следующий вариант получения k k хеш-функций: Используется объект стандартной библиотеки std::hash, а при подсчете хеша для n-ого хешера, где n > 0, добавляется некоторое подобие «соли», в качестве которой выступает номер хеш-функции, приведенный к строке и добавленный в конец исходной строки. Таким образом, например, вычисление 4 4 хеш-функций от строки «abcd» будет выглядеть следующим образом: hash0(«abcd») = std::hash{}(«abcd»); hash1(«abcd») = std::hash{}(«abcd1»); hash2(«abcd») = std::hash{}(«abcd2»); hash3(«abcd») = std::hash{}(«abcd3»); Примечания Вы должны прислать код, содержащий определение вашего класса. Для удобства рекомендуется использовать публичный интерфейс из данного примера: ссылка. Ввиду того, что требуется рассчитывать долю ложно-положительных срабатываний, необходимо организовать хранение «действительных» копий строк, информация о которых была добавлена в фильтр. Вам предстоит самостоятельно выбрать способ хранения строк, с которыми вы работаете. Разрешено использование только собственных структур. От выбора оптимального способа хранения строк будет зависеть оценка. Например, может быть выбрана одна из возможных реализаций префиксного дерева
Похожие заказы

Обучение программированию

дистанционно
договорная
Язык программирования: Python Для себя Изучить, понять и выучить язык программирования
Санкт-Петербург Репетиторы

Обучение алгоритмам и структурам данных

дистанционно
договорная
Для себя Подтянуть предмет в вузе - алгоритмы и структуры данных ну и в целом литкод
Москва Репетиторы

Обучение созданию нейросетей

дистанционно
договорная
Для работы По работе
Москва Репетиторы

ООП

дистанционно
договорная
Подготовка к экзамену
Москва Репетиторы

Обучение Arduino

дистанционно
договорная
Для ребёнка
Москва Репетиторы

Обучение C++

дистанционно
договорная
Для себя
Москва Репетиторы

Обучение созданию нейросетей

от 1300.00 руб.
Для себя Модуль 1. Введение в ИСО «Орион»: • Основные понятия и принципы работы интегрированной системы охраны «Орион»; • Функциональные возможности ИСО «Орион»; • Области применения: противопожарная охрана, охранная сигнализация, контроль доступа. Модуль 2. Обзор оборудования: • Основное устройство ИСО «Орион»: • Приборы приемно-контрольные (ППК); • Устройства индикации и управления; • Датчики пожарной сигнализации; • Исполнительные устройства (сирены, оповещатели, модули управления); • Особенности подключения оборудования; • Изучение внешнего вида и назначения устройства; • Определение совместимости оборудования для различных задач. Модуль 3. Программное обеспечение: • Программное обеспечение «Pprog»: • Интерфейс программы; • Настройка параметров оборудования; • Создание баз данных объектов; • Работа с программой «Uprog»: • Обновление прошивок устройства; • Диагностика оборудования; • Изучение справочной документации по программному обеспечению; • Подготовка краткого отчета о возможностях программного обеспечения. Модуль 4. Конфигурирование системы: • Этапы конфигурирования системы: • Создание проекта; • Настройка зоны контроля; • Привязка датчиков и исполнительных устройств; • Настройка логики работы системы: • Алгоритмы реализации; • Сценарии управления; • Создание тестового проекта в программе «Pprog»; • Настройка зоны контроля и привязка оборудования; • Тестирование работы систем; • Анализ ошибок при конфигурировании; • Подготовка рекомендаций по соблюдению условий. Модуль 5. Техническое обслуживание: • Плановое и внеплановое обслуживание оборудования; • Методы диагностики неисправностей; • Профилактические мероприятия; • Проверка работоспособности оборудования; • Выявление и устранение неисправностей; • типовое изучение неисправностей и их причины; • Подготовка плана технического обслуживания. Модуль 6. Практические занятия: • Комплексное задание: • Разработка проекта системы противопожарной защиты объекта; • Конфигурирование оборудования; • Тестирование работы систем; • Защита проекта перед разделением.
Москва Репетиторы