Вчера помогала другой блогерше с заданием по функциональному программированию и столкнулась с вопросом - а как объяснить не математику, что такое рекурсия? Тем, кто знаком с такими математическими терминами как реккурентные функции и индукция, рекурсия по идее будет интуитивно понятна и так. Попробую рассказать про рекурсию максимально просто (для более интеллектуальных и подробных объяснений ищите статьи и видео в Интернете, и всё должно проясниться) для тех, кто ещё не разобрался. Наверно те, кто уже сталкивался с рекурсией, примерно понимает, что это функция, которая вызывает саму себя. Но как это может работать - непонятно? Давайте возьмём для примера функцию «сумма элементов списка» (или массива). sum(lst) - можно ее определить итеративно, пройдясь циклом через все элементы списка. (for x in list: result += x) Но можно воспользоваться и рекурсивным определением. Оно будет выглядеть примерно так: 1) Если список пуст, то сумма равна 0. - Это граничное условие, оно должно быть не рек
Что такое рекурсия? Объясняю для новичков на примере Python
30 апреля 202130 апр 2021
84
2 мин