0.3.0 • Published 5 years ago

leettree v0.3.0

Weekly downloads
4
License
MIT
Repository
github
Last release
5 years ago

leettree

Build Status codecov JavaScript Style Guide

Convert array to binary tree and vice versa using level order traversal like LeetCode!

See LeetCode FAQ on binary tree representation using array here.

Installation

npm install leettree

Usage

Deserialize and Serialize

// 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]

Creating TreeNode

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.