文章
279
粉丝
20
获赞
744
访问
149.1k
(1) 设当前节点的值是x。
若x的值比K大,则x的右儿子及其子树的值均比x大,则均不可能比x更加优。
若x的值比K小,则x的左儿子及其子树的值均比x小,则均不可能比x更加优
(2)
void solve(BSTNode* root){
}
评分及理由
(1)得分及理由(满分4分)
得分:2分
理由:学生作答的第一部分描述了在二叉搜索树中查找与给定值K最接近的节点时的一种剪枝思想,即“如果当前节点值大于K,则其右子树所有节点值都更大,与K的差值会更大,因此无需搜索右子树;反之亦然”。这个思路本身是正确的,并且是解决此类问题的一种高效方法(利用BST的性质进行二分查找)。然而,题目要求的是“查找树中关键字与K之差的绝对值最小的所有结点”,这意味着可能存在多个节点与K的差值绝对值相同且都为最小值。学生的描述只聚焦于找到一个最接近的节点,没有提及如何处理多个节点的情况。因此,思路不完整,扣2分。
(2)得分及理由(满分8分)
得分:0分
理由:学生作答的第二部分仅提供了一个空的函数框架 `void solve(BSTNode* root){}`,没有实现任何算法逻辑。这不符合题目“使用C/C++描述算法思想”的要求,相当于没有作答。因此,本小题得0分。
题目总分:2+0=2分
登录后发布评论
暂无评论,来抢沙发