Что такое эвристическая функция и как она используется в алгоритмах