Convert array to binary tree and vice versa using level order traversal like LeetCode!
See LeetCode FAQ on binary tree representation using array here.
npm install leettree
// in node.js environment.
// you can use ES6 import too.
const leettree = require('leettree')
// initial input value.
const array = [1, 2, 3, null, null, 6]
// deserialize the array into binary tree.
const binaryTree = leettree.deserialize(array)
// TreeNode {
// val: 1,
// right: TreeNode {
// val: 3,
// right: null,
// left: TreeNode {
// val: 6,
// right: null,
// left: null
// }
// },
// left: TreeNode {
// val: 2,
// right: null,
// left: null
// }
// }
// serialize the binary tree back into array.
const array2 = leettree.serialize(binaryTree)
// [1, 2, 3, null, null, 6]
const TreeNode = require('leettree').TreeNode
const root = new TreeNode(1)
root.left = new TreeNode(2)
root.right = new TreeNode(3)
root.right.left = new TreeNode(6)
See the code and tests for more usage examples.