为了账号安全,请及时绑定邮箱和手机立即绑定

运行结果不一样(如图),求教大神?

请问我的运行结果为什么是这样的(如图)?代码检查跟老师一模一样的。

http://img1.sycdn.imooc.com//5813556f00018d3f08990709.jpg

bool Tree::AddNode(int nodeIndex, int direction, int *pNode)
{
	if (nodeIndex < 0 || nodeIndex >= m_iSize)
	{
		return false;
	}
	if (m_pTree[nodeIndex] == 0)
	{
		return false;
	}
	if (direction = 0)//左孩子
	{
		if (nodeIndex * 2 + 1 >= m_iSize)
		{
		return false;
		}
		if (m_pTree[nodeIndex * 2 + 1] != 0)
		{
		return false;
		}
		m_pTree[nodeIndex * 2 + 1] = *pNode;
	}
	if (direction = 1)//右孩子
	{
		if (nodeIndex * 2 + 2 >= m_iSize)
		{
			return false;
		}
		if (m_pTree[nodeIndex * 2 + 2] != 0)
		{
			return false;
		}
		m_pTree[nodeIndex * 2 + 2] = *pNode;
	}
	return true;
}


正在回答

3 回答

你的第七行语句,if(direction==0)出现了两个等号,这种编译器一般不会报错

1 回复 有任何疑惑可以回复我~

if(direction == 0)两个等号

0 回复 有任何疑惑可以回复我~

求解答,感激不尽。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

运行结果不一样(如图),求教大神?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信