JavaScript: Building binary tree

Last update: 18 Mar 23:20
0
Students

A binary tree is a hierarchical data structure in which each node has no more than two descendants (children). The first is the parent node, and the children are the left and right descendants.

In this exercise, we will use a subspecies of a binary tree — a binary search tree. The proper tree does not contain duplicate keys, and it garanties for each node that in the left subtree all values are less than the current one, and in the right one — more.

Binary search tree

Node.js

Implement and export as default the class that represents the node.

The class must contain:

  • The getKey() getter that returns the key
  • The getLeft() and GetRight() getters that return the left and right child, respectively. If there are no child nodes, the getter returns null
  • The insert(key) method adds a node, forming a correct binary tree

Examples

const tree = new Node();
tree.insert(9);
tree.insert(17);
tree.insert(4);
tree.insert(3);
tree.insert(6);

tree.getKey(); // 9
tree.getLeft().getKey(); // 4
tree.getRight().getKey(); // 17
tree.getLeft().getLeft().getKey(); // 3
tree.getLeft().getRight().getKey(); // 6

Tips

For full access to the challenge you need a professional subscription.

A professional subscription will give you full access to all Hexlet courses, projects and lifetime access to the theory of lessons learned. You can cancel your subscription at any time.

Get access
130
courses
1000
exercises
2000+
hours of theory
3200
tests