你好,请问在不围棋代码的backup函数中,在side初始化为0,node初始化为当前节点的时候,为什么判断落子方的条件是side==1呢?第一次执行的时候,this不应该作为落子方吗?
源代码如下:
void backup(double deltaValue) //回传估值,从当前叶节点以及往上的每一个父节点都加上估值
{
treeNode *node = this;
int side = 0;
while (node != nullptr) //当node不是根节点的父节点时
{
if (side == 1) //落子方
{
node->value += deltaValue;
side--;
}
else //非落子方
{
node->value -= deltaValue;
side++;
}
node->n++; //当前节点被探索次数++
node = node->parent;
}
}