Middle+
Feladat: járd végig egy objektumfát (minden objektumnak van value és elements mezője), és számold össze az összes értéket. Hogyan valósítanád meg?
sobes.tech MI
Válasz az MI-től
Az objektumfák bejárásához, amelyek value és elements mezőkkel rendelkeznek (ahol az elements egy gyermekobjektumokat tartalmazó tömb), rekurzív függvény használható.
Példa JavaScript-ben:
function sumValues(node) {
let sum = node.value;
if (node.elements && node.elements.length > 0) {
for (const child of node.elements) {
sum += sumValues(child);
}
}
return sum;
}
// Használati példa:
const tree = {
value: 10,
elements: [
{ value: 5, elements: [] },
{ value: 3, elements: [
{ value: 2, elements: [] }
]}
]
};
console.log(sumValues(tree)); // 20
A sumValues függvény egy csomópontot vesz be, hozzáadja az értékét az összeghez, majd rekurzívan meghívja magát minden gyermekelemre, összegyűjtve az eredményt.