Первые 8 циклов довольно просты: maxValue уменьшается на 1. а затем цель позже уменьшается на 1. Задача для меня начинается с 10-й строки (где цель начинает увеличиваться на 1), вплоть до конца. Пожалуйста, попытайтесь пролить свет на то, как аргументы target и maxValue изменяют значения в рекурсии
Код: Выделить всё
let i=0;
function createPartitions(target, maxValue, suffix, partitions) {
i++;
if (target == 0) {
console.log("A :" + "target : " + target + " maxValue : " + maxValue + " " + "suffix: " + JSON.stringify(suffix));
partitions.push(suffix);
} else {
if (maxValue > 1) {
console.log("B :" + "target : " + target + " maxValue : " + maxValue + " " + "suffix: " + JSON.stringify(suffix));
createPartitions(target, maxValue-1, suffix, partitions);
}
if (maxValue
Подробнее здесь: [url]https://stackoverflow.com/questions/79365462/how-to-track-the-values-of-variables-in-javascript-recursion[/url]
Мобильная версия