Middle
Úloha: prechod stromom s výpisom textu s odsadením (rekurzívny prechod vnoreného zoznamu)
sobes.tech AI
Odpoveď od AI
Pre rekurzívne prechádzanie stromom s výstupom textu s odsadením môžete použiť funkciu, ktorá prijíma uzol a úroveň vnorenia. Na každej úrovni pridajte odsadenie, napríklad pomocou medzier alebo tabulátorov.
Príklad v JavaScripte pre vnorený zoznam objektov:
function printTree(node, indent = 0) {
console.log(' '.repeat(indent) + node.text);
if (node.children) {
node.children.forEach(child => printTree(child, indent + 2));
}
}
// Príklad dát
const tree = {
text: 'koreň',
children: [
{ text: 'dieťa1' },
{ text: 'dieťa2', children: [
{ text: 'vnuk1' },
{ text: 'vnuk2' }
]}
]
};
printTree(tree);
Výstup bude s odsadením odrážajúcim hĺbku:
koreň
dieťa1
dieťa2
vnuk1
vnuk2
Tento prístup je univerzálny a ľahko sa prispôsobí rôznym štruktúram a formátom výstupu.