dubter / DirsComparator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Задача 4 / Системное программирование

Автор: Дубенков Родион Сергеевич

Алгоритм запуска программы:

  1. cd build
  2. ./dirscomparator --dir1=<путь до первой директории> --dir2=<путь до второй директории> --similarity=<процент сходства Тони>
  3. PROFIT

Пример c тестовыми директориями в репозитории: ./dirscomparator --dir1=../testdir1 --dir2=../testdir2 --similarity=30

Дизайн

В данной задаче есть один неоднозначный момент: Как считать процент похожести файлов?

Я привёл довольно сбалансированное решение с точки зрения скорости и корректности:
Я брал каждый файл и представлял его в виде мапы byte -> count.

И тогда для нахождения количества общих символов нужно пройтись по мапе и сложить все общие символы (то есть min(count1, count2)).

About


Languages

Language:Go 98.2%Language:Makefile 1.8%