问答详情
源自:3-1 二叉树数组实现编码实战(一)

AddNode中检测节点是否为空

为何要检测nodeIndex是否是空的呢,直接检测nodeIndex*2+1(或者2)节点是否为空不就好了if (nodeIndex * 2 + direction < 0 || nodeIndex * 2 + direction >= m_iSize)
 {
  return false;
 }
 if (m_pTree[nodeIndex * 2 + direction] == 0)
 {
  return false;
 }
 m_pTree[nodeIndex * 2 + direction] = *pNode;
 return true;

我这里将direction定义为1或者2

提问者:慕运维4915236 2016-08-12 09:14

个回答

  • 醉独醒
    2016-08-12 09:44:47
    已采纳

    如果nodeIndex的节点为空的话,那么也就代表它就没有对应的左、右孩子。

  • 慕运维4915236
    2016-08-12 09:47:10

    哈哈 我知道为什么了[/尴尬脸]