Middle+
Uzdevums: pārbaudīt objektu koku (katrs objekts ir lauki value un elements) un saskaitīt visu value summu. Kā tu to realizētu?
sobes.tech AI
Atbilde no AI
Lai pārvietotos pa objektu koku ar laukiem value un elements (kur elements ir masīvs ar bērnu objektiem) un aprēķinātu visu value vērtību summu, var izmantot rekursīvu funkciju.
Piemērs JavaScript:
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;
}
// Piemērs lietošanai:
const tree = {
value: 10,
elements: [
{ value: 5, elements: [] },
{ value: 3, elements: [
{ value: 2, elements: [] }
]}
]
};
console.log(sumValues(tree)); // 20
sumValues funkcija ņem mezglu, pievieno tā vērtību summai un rekursīvi izsauc sevi visiem bērnu elementiem, apkopo summu.