Chaining hash by dividing
Есть задача,что существует 2 массива, в одном значения, во втором суммы. Как проверить есть ли таких 2 значения в 1 массиве сумма которых равна числу со второй с помощью chaining hash?
Ответы (1 шт):
Автор решения: passant
→ Ссылка
Проверить, есть-ли два числа в первом массиве такие, что их сумма равна числу из второго массива - можно. Полным перебором.
zn=[7,1,10,3,4,3,8,5,6,8,2,9]
sm=[17,5,9,12,9,18]
for i in sm:
for j in zn:
for k in zn:
if i==j+k:
print (i,"=",j,"+",k)
Это общий случай.
Если данные упорядочены, и/или в данных нет повторений - то количество операций можно сократить, введя соответствующие проверки.
А вот с какого боку тут chaining hash - и хеширование вообще - совершенно неясно. Проясните.