Node* __insert2(Node* node, Key key, Value value){
Node* tmpNode = node;
while(true){
if (tmpNode == NULL){
tmpNode = new Node(key, value);
count++;
break;
}
if( key == tmpNode->key)
tmpNode->value = value;
break;
if( key < tmpNode->key )
tmpNode = tmpNode->left;
else
tmpNode = tmpNode->right;
}
return tmpNode;// 这里应该 return tmpNode 还是 node 本身?
}这是我理解的非递归实现,但是总感觉有什么不对,还请老师指点(我看了一下后面的测试用例,一步步调试还是没搞清楚最后 return 的 node 应该是哪一个)