文章
117
粉丝
160
获赞
0
访问
3.8k

评分及理由
(1)得分及理由(满分4分)
学生作答中描述了使用辅助数组的方法:将前p个元素保存到辅助数组,然后将后n-p个元素前移,最后将辅助数组中的元素放回数组后部。这种思路是正确且可行的,与标准答案中的“另解”一致。因此,基本设计思想描述清晰正确,得4分。
(2)得分及理由(满分7分)
学生使用C语言描述了算法,代码结构完整,关键步骤有注释。但存在以下问题:
1. 在第一个for循环中对辅助数组M进行初始化为0的操作是多余的,因为后续会直接覆盖,但这不影响逻辑正确性,不扣分。
2. 代码中未释放动态申请的辅助数组M,存在内存泄漏问题,这是一个逻辑错误。根据扣分规则,应扣1分。
3. 其他部分逻辑正确,代码能够实现循环左移功能。
因此,本部分得6分(7-1=6)。
(3)得分及理由(满分2分)
学生正确分析了时间复杂度为O(n)和空间复杂度为O(p),与标准答案一致。得2分。
题目总分:4+6+2=12分
登录后发布评论
暂无评论,来抢沙发