文章
36
粉丝
0
获赞
2
访问
1.8k
评分及理由
(1)得分及理由(满分4分)
学生给出的基本设计思想是使用辅助数组存储前p个元素,然后将剩余元素左移,最后将辅助数组中的元素放回数组末尾。这种思路与标准答案中的“另解”一致,是正确的。因此得4分。
(2)得分及理由(满分7分)
学生使用C语言描述了算法,但存在以下问题:
1. 函数参数缺少p(循环左移的位数),但根据上下文和注释可知学生意图使用p,可能是识别遗漏,不扣分。
2. 辅助数组temp被重复定义(两次malloc),但第二次识别中已修正,以第二次识别为准,不扣分。
3. 初始化temp为0的循环是多余的,但不影响逻辑,不扣分。
4. 核心逻辑正确:存储前p个元素、左移剩余元素、放回辅助数组元素。
代码整体正确,但缺少参数p(应作为函数参数),根据识别结果,学生可能误写,但思路清晰,扣1分。得6分。
(3)得分及理由(满分2分)
学生正确分析了时间复杂度为O(n)和空间复杂度为O(p),与标准答案一致。得2分。
题目总分:4+6+2=12分
登录后发布评论
暂无评论,来抢沙发