Сравнение файла с другими файлами, чтобы узнать, существовал ли он раньше или нет?

У меня есть проект запуска, и это о файлах. Я пытался создать алгоритм, но не смог. Я хочу создать алгоритм вместе с базой данных для этих целей

У меня есть много файлов в моей базе данных (файл или отношение к файлу не имеет значения), и когда приходит другой файл, я хочу сравнить этот файл со всеми моими файлами, и если он имеет более чем, например, 80% сходство, я не пусть это сохранится в моей базе данных еще с тем условием, что оно имеет схожесть менее 80% со всеми файлами, которые я хочу сохранить в моей базе данных.

-1

Решение

Вы должны хранить 3 переменные: Similarity, Size1 и Size2 (все инициализированы как 0).

Во-первых, вы начинаете сравнивать символ за символом (или побитно или все, что вам нужно) из файлов, и когда вы читаете символ, если их символы одинаковы, вы увеличиваете 1 в Сходстве. После каждого сравнения символов вы увеличиваете 1 в Size1 и Size2.

Вы должны запускать это сравнение до тех пор, пока один из файлов не закончится, а затем просто считать количество символов, оставшихся в файле большего размера, и увеличивать в Size1 или Size2.

Затем вы делите Сходство на размер файла в вашей базе данных (будь то Размер1 или Размер2) и смотрите, будет ли он на 80% или более похож на новый.

надеюсь, это поможет 🙂

0

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

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

По вопросам рекламы [email protected]