文章

7

粉丝

0

获赞

0

访问

4.0k

头像
2025 年 6 月第 1 次 408 月考试卷 - 第41题回答
数据结构
发布于2025年10月16日 18:28
阅读数 480

1.从1到n-1遍历数组A,设置下标变量i指向当前遍历的数组值,设置变量max存储峰的最大值下标,min存储谷的最小值下标,若A[i] > A[i-1]且A[i] > A[i+1],则将该数组下标变量存储到数组f[n]中,并且将A[max]的值和A[i]比较,若A[i]>A[max],则max=i,反之不变;若A[i] < A[i-1]且A[i] <  A[i+1],则将该数组下标变量存储到数组g[n]中,并且将A[min]的值和A[i]比较,若A[i]<A[min],则min=i,反之不变;遍历完成后。max与min就是最大的峰谷对

2

3.时间复杂度o(n),空间复杂度o(n)


评分及理由

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

得分:2分

理由:学生基本理解了需要识别峰和谷的概念,并尝试记录峰和谷的位置。但是设计思想存在严重逻辑错误:

  • 错误地认为整个数组中最大的峰和最小的谷就能组成最大差值的峰谷对,实际上峰必须在谷之前出现(i < j),而最大峰和最小谷可能不满足这个时序关系
  • 没有考虑到峰必须在谷之前这一关键约束条件
  • 思路不完整,没有给出如何高效找到满足i < j条件的峰谷对的具体方法

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

得分:0分

理由:

  • 学生只给出了设计思想的文字描述,没有提供任何代码实现
  • 按照题目要求,必须用C或C++语言描述算法并给出关键注释
  • 缺少代码实现部分,无法验证算法的正确性和完整性

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

得分:1分

理由:

  • 学生正确给出了时间复杂度O(n)和空间复杂度O(n)
  • 但由于算法设计思想存在根本性错误,且没有完整实现,这个复杂度分析缺乏实际依据
  • 扣1分因为复杂度分析基于错误的算法设计

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发