JSFiddle - React, Tailwind, and code Playground
by denisz
JavaScript
/**
Описать бинарное дерево на JavaScript
Создать два конструктора Tree и Node таким образом, что бы Tree имел возможность добавления нового узла Node, например:
tree.add(10) при условии, что если добавляемое число меньше значения в дереве, то оно записывается в левую ветку, если больше, то в правую.
*/
var Node = function() {
var value, left, right;
}
var Tree = function(){
var point;
}
Tree.prototype.add = function(data){
var node = new Node();
node.value = data;
if(typeof this.point == 'undefined') {
this.point = node;
} else {
if()
}
}
function setTree(point, el) {
if(point.value < el.value) {
if(typeof point.left != 'undefined') {
setTree(point.left, el);
} else {
point.left = el;
return;
}
} else {
if(typeof point.right != 'undefined') {
setTree(point.right, el);
} else {
point.right = el;
return;
}
}
}