文章

389

粉丝

5

获赞

19

访问

25.3k

头像
2025年计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年10月5日 18:16
阅读数 28


评分及理由

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

得0分。算法基本思想存在严重逻辑错误。学生思路是找到整个数组的最大值和最小值,然后根据A[i]的正负分别乘以最大值或最小值。但题目要求的是A[i]与A[j](i≤j≤n-1)乘积的最大值,即每个res[i]需要的是从i到n-1这个子数组范围内的乘积最大值。学生的思路无法处理动态变化的子数组范围,例如当A[i]为负数时,应该乘以子数组中的最小值(可能产生最大乘积),但学生的全局最小值可能出现在i之前,这不符合题目要求。

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

得0分。代码实现存在多处逻辑错误:
1. 最大值最小值初始化错误:应该从后往前遍历,但学生是从前往后遍历找全局极值
2. 缺少对A[i]=0情况的处理
3. 第二个循环中使用了错误的判断逻辑(第一次识别使用了while,第二次识别虽然改为if但仍逻辑错误)
4. 完全忽略了题目要求的i≤j≤n-1这个关键条件
5. 没有考虑A[i]本身可能是最大值的情况
代码整体逻辑与题目要求不符,无法正确计算res数组。

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

得1分。虽然时间复杂度分析正确为O(n),空间复杂度分析正确为O(1),但由于算法本身是错误的,这个分析失去了意义。考虑到学生正确识别了循环次数和额外空间使用,给1分。

题目总分:0+0+1=1分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发