Sobes.tech
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.