Метод структурной рекурсии в программировании заключается в том, что аргументом для каждого рекурсивного вызова является содержимое поля исходных входных данных. 1
Структурно рекурсивная функция на верхнем уровне всегда представляет собой команду ветвления с двумя или более альтернативными ветвями, из которых хотя бы одна является рекурсивной и хотя бы одна — терминальной. 3 Рекурсивная ветвь выполняется, когда условие прекращения рекурсии ложно, и содержит хотя бы один рекурсивный вызов — прямой или опосредованный вызов функцией самой себя. 3 Терминальная ветвь выполняется, когда условие прекращения рекурсии истинно; она возвращает некоторое значение, не выполняя рекурсивного вызова. 3
Примеры структурной рекурсии: почти все обходы дерева, включая обработку XML, создание и поиск двоичного дерева. 1