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 - и хеширование вообще - совершенно неясно. Проясните.

→ Ссылка