文章

16

粉丝

0

获赞

0

访问

124

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


评分及理由

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

学生答案中给出了基本设计思想:“二叉搜索树的中序遍历是升序序列。结点i的左孩子为2i + 1,右孩子2i + 2,中序遍历,每次比较是否大于上个结点,若大于则继续;否则不是二叉搜索树。直到最后没出现错误则是二叉搜索树。” 该思路正确,利用了二叉搜索树中序遍历有序的性质,并指出了在顺序存储中如何定位左右孩子。因此,本部分得满分4分。

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

学生提供的代码存在多处逻辑错误和实现问题:
1. 函数定义中使用了未定义的变量(如 lri),且 t 应为参数传入而非全局变量。
2. 递归逻辑混乱:在 fun 函数中,先递归左子树,然后判断当前结点值是否大于父结点值(这不符合中序遍历的比较顺序,且父结点值作为参数传递的方式错误),再递归右子树。这实际上不是标准的中序遍历验证方法,且比较对象错误(应该与中序遍历的前驱比较,而非父结点)。
3. 边界条件处理不当:当索引越界或结点值为-1(表示空结点)时,应直接返回而不参与比较,但代码中仅检查了越界,未处理-1的情况。
4. 函数 isor not 命名不规范且逻辑不完整,未正确初始化比较值。
由于代码核心逻辑错误,无法正确判断二叉搜索树,因此本部分扣分较多。但考虑到学生可能因识别错误导致部分细节偏差,且基本思路正确,给予部分分数。扣分后得3分。

题目总分:4+3=7分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发