平衡二叉树的程序//析构函数上是从最低层的叶子节点开始析构的吗?解决思路
平衡二叉树的程序//析构函数上是从最低层的叶子节点开始析构的吗?
------解决方案--------------------
如果直接删除父节点,那子节点和父节点的联系就断了,那怎么删除子节点
我是这么想的
- C/C++ code
~Node (void) { if (m_pParent) {//m_pParent节点类的父指针 if (m_pParent -> m_pLeft == this)//节点类的左指针 m_pParent -> m_pLeft = NULL; else if (m_pParent -> m_pRight == this)//节点类的右指针 m_pParent -> m_pRight = NULL; } if (m_pLeft) { delete m_pLeft; m_pLeft = NULL; } if (m_pRight) { delete m_pRight; m_pRight = NULL; } }
------解决方案--------------------
如果直接删除父节点,那子节点和父节点的联系就断了,那怎么删除子节点
我是这么想的