加入myjs999俱乐部!
戳这里
void modify(node* tempnode, int templeft, int tempright) {
if(templeft == tempright) { // 目标点(叶子结点)
tempnode->maxnum = aimnum;
return;
}
int middle = (templeft + tempright) / 2;
if(aimp <= middle) modify(tempnode->leftchild, templeft, middle);
else modify(tempnode->rightchild, middle+1, tempright);
tempnode->maxnum = max(tempnode->leftchild->maxnum, tempnode->rightchild->maxnum); // 回溯时更新
}