Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.143.9.115] |
|
Страницы: (4) 1 2 [3] 4 все ( Перейти к последнему сообщению ) |
Сообщ.
#31
,
|
|
|
^D^ima
Очень дельный совет . Буду пробовать, после отпишусь. Человеческое спасибо! Добавлено ^D^ima, Кстати, когда прописываю в uses System.Hash. Он подчеркивается и надпись: cannot resolve unit name System.Hash. Что за ошибка ?, не могу понять... А если IdHashSHA то все нормально. |
Сообщ.
#32
,
|
|
|
В uses аросто hash
|
Сообщ.
#33
,
|
|
|
^D^ima, Так тоже пробовал так же само пишет. Может косяк в Delphi ?
|
Сообщ.
#34
,
|
|
|
Я в 10 пробовал
|
Сообщ.
#35
,
|
|
|
^D^ima,
Поставлю 2010 и тоже попробую. Скорее всего глюк в Delphi. Спасибо. |
Сообщ.
#36
,
|
|
|
Извращенцы! awk '!a[$0]++' in.file > out.file
|
Сообщ.
#37
,
|
|
|
Цитата Kirilis2018 @ Поставлю 2010 я писал о 10-м |
Сообщ.
#38
,
|
|
|
Цитата ^D^ima @ Аааа, я понял |
Сообщ.
#39
,
|
|
|
Кстати да, срс32 это циклический код(контрольная сумма) который имеет огромную коллизию, хеш который у всех на слуху, криптографический типа sha1,md5,sha2 имеет значительно меньшие коллизии и именно их имеют в виду в первую очередь говоря о хеше. Так что никто crc32 хранит не собирается |
Сообщ.
#40
,
|
|
|
Да я понимаю, ^D^ima, просто CRC32 простой и сразу пришёл на память. Но все остальные кэши - лишь уменьшают вероятность "сбоя", не приводя оную к 0. А таковой вероятностный (негарантированный) алгоритм я бы лично не принял. Да и задача явно не про такие ухищрения.
|
Сообщ.
#41
,
|
|
|
Тогда хранить в Dictionary. Там тоже поиск О(1), но коллизия исчезает. Есть в Дeльфи Dictionary?
|
Сообщ.
#42
,
|
|
|
Цитата Славян @ Но все остальные кэши - лишь уменьшают вероятность "сбоя", не приводя оную к 0. Но почти приводящую. Для SHA1 кстати нашли алгоритм подбора коллизий для разного набора данных, но: за десять лет с момента изобретения SHA-1 не было известно ни об одном практическом способе генерации коллизий. для подбора потребовалось: проводила компания Google. В общей сложности было произведено девять квинтиллионов вычислений SHA-1 (9 223 372 036 854 775 808), что потребовало 6500 процессорных лет на первой фазе и 110 лет GPU на второй фазе атаки. Так что если и захочешь, не найдешь. В Гитхабе и много где ещё SHA1 используется, а тут для простого прикладного примера. Не нравится SHA1, используй SHA2. Тем более в delphi, стандартном модуле hash используется SHA2 512, самый большой Добавлено Цитата MIF @ Есть в Дeльфи Dictionary? да |
Сообщ.
#43
,
|
|
|
Цитата Славян @ А таковой вероятностный (негарантированный) алгоритм я бы лично не принял Лол. Почитай как HashSet/HashMap устроен, про разрешение коллизий. Цитата Славян @ Да и задача явно не про такие ухищрения. Какие ухищрения? Использование HashSet/HashMap — стандартный способ решения этой задачи. |
Сообщ.
#44
,
|
|
|
Цитата korvin @ Что мне почитать - я уж как-нибудь сам придумаю; а если у вас есть обоснованные возражения о вероятностном характере получаемого алгоритма с хэшем - вполне могли бы здесь и набросать оные. Цитата Славян @ Почитай как HashSet/HashMap устроен, про разрешение коллизий.А таковой вероятностный (негарантированный) алгоритм я бы лично не принял. |
Сообщ.
#45
,
|
|
|
Цитата Славян @ Что мне почитать - я уж как-нибудь сам придумаю Но тогда не стоит писать и делать выводы о том, о чём имеешь плохое представление. Цитата Славян @ а если у вас есть обоснованные возражения о вероятностном характере получаемого алгоритма с хэшем Ты бы вместо набора слов писал бы лучше осмысленными выражениями. Какой ещё «вероятностный характер» в алгоритме с хэшами? Никакого random там не используется. Цитата Славян @ вполне могли бы здесь и набросать оные Зачем мне заниматься копипэйстингом? |