您将获得指向二叉搜索树的根的指针以及要插入树中的值。将此值插入二叉搜索树中的适当位置,并返回更新的二叉树的根。你只需要完成这个功能。
我已经提供了我的代码但是一个测试用例不起作用。这是我的代码:
grants.map(
function (v) {
if (!(v.id in this)) {
// => initialize if empty
v.type = v.type || [];
v.funds = v.funds || [];
this[v.id] = v;
projects.push(v);
} else {
var current = this[v.id];
current.type = v.type ? [v.type].concat(current.type) : current.type;
current.funds = v.funds ? [v.funds].concat(current.funds) : current.funds;
}
}, {});
答案 0 :(得分:3)
你错过了两个案例:IteratorWrapper
和空树。
it
:在这种情况下,树不会以任何方式被更改,但是您的代码不会中断并最终处于无限循环中。
最简单的解决方案是在value == d.data
循环中插入这些行:
value == d.data
树是空的情况是特定于实现的,因此很难为此案例提出任何解决方案。