2022-fall-computer-science

Практика

Разминка

  1. Создайте в своём репозитории 2022-polytech-%фамилия% директорию 11_hashing
  2. Cоздайте пустой README.md файл
  3. В директории 11_hashing/intro создайте cmake-проект
  4. Придумайте и реализуйте hash-функцию для строк
  5. Приведите тесты для всех методов с использованием библиотеки doctest
  6. Отправьте решение на GitHub

Задание

  1. Создайте в своём репозитории 2022-polytech-%фамилия% директорию 11_hashing
  2. Cоздайте пустой README.md файл
  3. В директории 11_hashing/dictionary создайте cmake-проект
  4. Реализуйте класс hash-таблицы, используя hash-функцию из разминки (готовыми ассоциативными контейнерами пользоваться нельзя)
  5. Добавьте в класс методы insert для вставки ключей и значений, get для извлечения значений по ключу и size для получения числа записанных ключей в таблице
  6. Напищите тесты с помощью doctest, демонстрируеющие работу hash-таблицы
  7. Отправьте решение на GitHub

Домашнее задание

  1. Создайте в своём репозитории 2022-polytech-%фамилия% директорию 11_hashing
  2. Cоздайте пустой README.md файл
  3. В директории 11_hashing/substr создайте cmake-проект
  4. Скопируйте проект из разминки 8 задания
  5. Добавьте к классу строки метод search_substr, который ищет переданную параметром подстроку в страке класса, метод возвращет индекс начала подстроки
  6. Если вы не использовали в решении хеширование, подумайте, как можно улучшить алгоритм с помощью хеширования
  7. Напишите тесты для метода search_substr с помощью doctest
  8. Отправьте решение на GitHub

Комментарии