文章

986

粉丝

5

获赞

20

访问

255.0k

头像
2022年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年10月12日 17:44
阅读数 319


评分及理由

(1)得分及理由(满分4分)

学生答案的基本设计思想是:利用中序遍历二叉搜索树会得到递增序列的性质,通过一个变量val记录当前遍历到的最大值,如果当前结点值小于等于val则说明不是二叉搜索树。这个思路是正确的,与标准答案中的方法二思路一致。但是学生答案中描述"若当前遍历的结点值小于val则返回false"不够准确,应该是"小于等于val",因为二叉搜索树要求严格递增(不能有重复值)。考虑到这是思路描述,不涉及具体代码实现,且核心思想正确,扣1分。

得分:3分

(2)得分及理由(满分9分)

学生的代码实现存在以下问题:

  1. 代码不完整,缺少对SqBiTree结构体的定义
  2. typedef struct{int bool;} 语法错误,bool应该是返回类型
  3. 缺少对val的初始化,在第一次调用时val可能指向随机值
  4. 缺少主调函数,没有给出如何调用judgeInOrderBST
  5. 递归终止条件处理不够完善,当结点不存在时直接返回true,但val值没有更新

但是核心的中序遍历逻辑是正确的:先递归左子树,然后检查当前结点值是否大于val,更新val,再递归右子树。这个算法框架是正确的。

根据代码完整性和正确性,扣4分。

得分:5分

题目总分:3+5=8分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发