diff --git a/Data-Structures/Tree/TreeTraversal.js b/Data-Structures/Tree/TreeTraversal.js new file mode 100644 index 0000000000..296bfdb5ff --- /dev/null +++ b/Data-Structures/Tree/TreeTraversal.js @@ -0,0 +1,30 @@ +// O(n) Time and O(n) Space Complexity + +function inOrderTraverse (tree, array) { + if (tree !== null) { + inOrderTraverse(tree.left, array) + array.push(tree.value) + inOrderTraverse(tree.right, array) + } + return array +} + +function preOrderTraverse (tree, array) { + if (tree !== null) { + array.push(tree.value) + preOrderTraverse(tree.left, array) + preOrderTraverse(tree.right, array) + } + return array +} + +function postOrderTraverse (tree, array) { + if (tree !== null) { + postOrderTraverse(tree.left, array) + postOrderTraverse(tree.right, array) + array.push(tree.value) + } + return array +} + +export { inOrderTraverse, preOrderTraverse, postOrderTraverse }

AltStyle によって変換されたページ (->オリジナル) /