AddNode中检测节点是否为空

来源:3-1 二叉树数组实现编码实战(一)

慕运维4915236

2016-08-12 09:14

为何要检测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

写回答 关注

2回答

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

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

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

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

数据结构探险之树篇

树,将为你开启更精彩的数据结构大门,了解更多概念

56460 学习 · 116 问题

查看课程

相似问题