Middle
Задача: обход на дърво с извеждане на текст с отстъпи (рекурсивен обход на вложен списък)
sobes.tech AI
Отговор от AI
За рекурсивно обхождане на дърво с показване на текста с отстъпи може да се използва функция, която приема възел и ниво на вложеност. На всеки ниво се добавят отстъпи, например с помощта на интервали или табулации.
Пример на JavaScript за вложен списък от обекти:
function printTree(node, indent = 0) {
console.log(' '.repeat(indent) + node.text);
if (node.children) {
node.children.forEach(child => printTree(child, indent + 2));
}
}
// Примерни данни
const tree = {
text: 'корен',
children: [
{ text: 'дете1' },
{ text: 'дете2', children: [
{ text: 'внук1' },
{ text: 'внук2' }
]}
]
};
printTree(tree);
Изходът ще бъде с отстъпи, отразяващи дълбочината:
корен
дете1
дете2
внук1
внук2
Този подход е универсален и лесно се адаптира към различни структури и формати на изход.