文章
310
粉丝
6
获赞
5
访问
85.0k

评分及理由
(1)得分及理由(满分4分)
学生答案的基本设计思想与标准答案一致:统计所有顶点的度,然后统计度为奇数的顶点个数,最后判断该个数是否为0或2。思路正确,表述清晰。得4分。
(2)得分及理由(满分9分)
学生给出的算法代码与标准答案逻辑一致。具体分析如下:
- 正确使用动态分配数组存储各顶点度(也可用静态数组,但动态分配正确)。
- 通过双重循环遍历邻接矩阵计算每个顶点的度。
- 遍历度数组统计奇数度顶点个数。
- 判断个数是否为0或2并返回相应值。
- 代码中释放了动态分配的内存,避免了内存泄漏。
- 代码中有一处疑似笔误:G.edge[i][j]应为G.Edge[i][j](结构体成员名为Edge),但根据上下文和两次识别结果判断,这很可能是识别误差或书写笔误,不影响核心逻辑的正确性,因此不扣分。
整体实现正确,符合题目要求。得9分。
(3)得分及理由(满分2分)
学生第一次识别结果中时间复杂度分析有误(O(n³)),但第二次识别结果已修正为O(n²),这是正确的(因为需要遍历n×n的邻接矩阵)。空间复杂度分析为O(n)也是正确的(用于存储度数组)。根据“只要其中有一次回答正确则不扣分”的原则,以正确分析为准。得2分。
题目总分:4+9+2=15分
登录后发布评论
暂无评论,来抢沙发