JSFiddle - React, Tailwind, and code Playground
JavaScript
var binaryTree =
{
val: 5,
n1: {
val: 2,
n1: { val: 1},
n2: { val: 4}
},
n2: {
val: 8,
n1: {val: 6},
n2: {val: 9}
}
}
var orderedNodes = []
function traverse(t)
{
if(t.n1)
traverse(t.n1);
orderedNodes.push(t);
if(t.n2)
traverse(t.n2);
}
traverse(binaryTree);
for(var i = 0; i < orderedNodes.length; i++)
{
if(orderedNodes[i-1])
orderedNodes[i].n1 = orderedNodes[i-1];
if(orderedNodes[i+1])
orderedNodes[i].n2 = orderedNodes[i+1];
}
console.dir(orderedNodes[0]);