为了账号安全,请及时绑定邮箱和手机立即绑定

Cannot read property 'key' of null

function Bin() {

var Node = function (key) {

this.key = key;

this.left = null;

this.right = null;

};

var root = null;

var insertNode = function (node, newNode) {

if (newNode.key < node.key) {

if (node.key === null) {

node.left = newNode;

} else {

insertNode(node.left, newNode);

}

} else {

if (node.right === null) {

node.right = newNode;

} else {

insertNode(node.right, newNode);

}

}

};

this.insert = function (key) {

var newNode = new Node(key);

if (root === null) {

root = newNode;

} else {

insertNode(root, newNode);

}

};

}

var nodes = [8, 3, 10, 1, 14, 7, 13];

var bin = new Bin();

nodes.forEach(function (key) {

bin.insert(key);

});


正在回答

2 回答

function Bin() {

var Node = function (key) {

this.key = key;

this.left = null;

this.right = null;

};

var root = null;

var insertNode = function (node, newNode) {

if (newNode.key < node.key) {

if (node.key === null) {                //此处node.key改为node.left

node.left = newNode;

} else {

insertNode(node.left, newNode);

}

} else {

if (node.right === null) {

node.right = newNode;

} else {

insertNode(node.right, newNode);

}

}

};

this.insert = function (key) {

var newNode = new Node(key);

if (root === null) {

root = newNode;

} else {

insertNode(root, newNode);

}

};

}

var nodes = [8, 3, 10, 1, 14, 7, 13];

var bin = new Bin();

nodes.forEach(function (key) {

bin.insert(key);

});



0 回复 有任何疑惑可以回复我~

var insertNode = function(node,newNode){/*外部不可调用的插入操作*/

if(node.key>newNode.key)

{

if(node.leftChild===null)

{

node.leftChild = newNode;

}else{

insertNode(node.leftChild,newNode)

}

}else{

if(node.rightChild===null)

{

node.rightChild = newNode;

}else{

insertNode(node.rightChild,newNode)

}

}

};

你是不是打错了··

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Cannot read property 'key' of null

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信