文章
119
粉丝
0
获赞
1
访问
9.9k
评分及理由
(1)得分及理由(满分3分)
得分:2分。学生答案的基本设计思想正确,使用了深度优先搜索(DFS)并记录深度,在叶子节点处计算带权路径长度。但描述中"遍历到非叶子节点时,把子树的返回值相加返回"存在歧义:实际上非叶子节点不应直接贡献WPL,而是通过递归累加子树结果。标准答案明确区分了叶子节点和非叶子节点的处理。扣1分。
(2)得分及理由(满分4分)
得分:3分。学生给出了正确的二叉树结点结构定义,包含weight、left和right指针。但使用了"Elemtype"(应为int)和未定义的"node"(应为结构体类型名),存在类型定义不严谨的问题。扣1分。
(3)得分及理由(满分6分)
得分:4分。算法框架正确,使用DFS递归遍历,在叶子节点处计算权重×深度。但存在两个问题:①递归终止条件应为叶子节点(left和right均为NULL),学生第二次识别的代码正确(p->left == NULL && p->right == NULL),但第一次识别错误(使用了非叶子节点条件);②函数未处理空树情况(root为NULL时深度0可能出错)。扣2分。
题目总分:2+3+4=9分
登录后发布评论
暂无评论,来抢沙发