0.0.1 • Published 8 years ago

binary-search-tree-js v0.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
8 years ago

Binary Search Tree

Binary Search Tree

Install

$ npm install --save binary-search-tree-js 

Usage

var Node = require("tree-node-js")
var BST = require("binary-search-tree-js")

var node1 = Node(22)
var tree = BST(node1)

var node1 = Node(10)
var node2 = Node(2)
tree.insert(node1)
tree.insert(node2)

tree.inorder(node1, function(node){
  console.log(node)
})

API

Initialize

BST(rootNode)

NameTypeDescription
rootNodeNodeA node we want to assign as the root node

Returns: BST instance

var Node = require("tree-node-js")
var BST = require("binary-search-tree-js")

var node1 = Node(22)
var tree = BST(node1)

Instance Methods

insert(node)

NameTypeDescription
nodeNodeA node we want to insert into the BST

Returns: undefined, that was inserted

var Node = require("tree-node-js")
var BST = require("binary-search-tree-js")

var node1 = Node(22)
var tree = BST(node1)

var node1 = Node(10)
var node2 = Node(2)
tree.insert(node1)
tree.insert(node2)

kthSmallest(k)

NameTypeDescription
kNumberRepresent the Kth element you want

Returns: Node, that represents the node that is the k smallest

var Node = require("tree-node-js")
var BST = require("binary-search-tree-js")

var node1 = Node(22)
var tree = BST(node1)
var node1 = Node(10)
var node2 = Node(2)
tree.insert(node1)
tree.insert(node2)

console.log(tree.kthSmallest(2)) // {value: 10, ....}

lca(n1, n2)

NameTypeDescription
n1 & n2NumberNubmers representing the data values of the nodes that you want to find the common ancestor for.

Returns: Node, that represents the node that is the lowest common ancestor

var Node = require("tree-node-js")
var BST = require("binary-search-tree-js")

var node1 = Node(22)
var tree = BST(node1)
var node1 = Node(10)
var node2 = Node(2)
tree.insert(node1)
tree.insert(node2)

console.log(tree.lca(2, 10)) // {value: 10, ....}