diff --git a/tree.js b/tree.js new file mode 100644 index 0000000..a2b96a4 --- /dev/null +++ b/tree.js @@ -0,0 +1,38 @@ +const tree = { + left:{ + left: { + left:{ + left: {}, + right: {} + }, + }, + right: {} + }, + right: { + left: {}, + right: { + left: {}, + right: {} + } + } +} + +const paths = []; +let currPath = ''; +const traverse = (node)=>{ + if(node.left === undefined && node.right === undefined){ + paths.push(currPath) + } + if(node.left){ + currPath += 'l'; + traverse(node.left) + } + if(node.right){ + currPath += 'r'; + traverse(node.right) + } + currPath = currPath.substring(0, currPath.length-1); +} + +traverse(tree) +console.log(paths);