sony往年程序笔试真题(4)

招聘笔试题2018-11-22李一老师

{

TNode* temp;

temp=root;

while((N>=temp.value && temp.left!=NULL) || (N

right

!=NULL

))

{

while(N>=temp.value && temp.left!=NULL)

temp=temp.left;

while(N

temp=temp.right;

}

if(N>=temp.value)

temp.left=NewNode;

else

temp.right=NewNode;

return;

}

}

原因:因为新节点的左右指针没有赋 NULL 值,至使下面的 while循环不能正确结束而导致内

存越界,最后崩溃(注意结束条件是 temp->left!= NULL 或 temp->right!=NULL)。

相关推荐

猜你喜欢

大家正在看

换一换