В вашем случае, проблема с пониманием рекурсии.
Для фибоначи — рекурсивная функция в одну строчку.
Алгоритмы знать полезно тем, что из всех наиболее известных алгоритмов сортировки или поиска можно выбрать тот, который больше всего подходит/понравился, останется закодить по готовой схеме.
Понимание конструкций и возможностей языка — куда более выгодный вектор развития, если это освоить, получится самостоятельно придумывать и реализовывать алгоритмы, а там уже и Кнута почитать полезно.