文章

310

粉丝

6

获赞

5

访问

85.0k

头像
2021年(408)计算机学科专业基础综合试题 - 第41题回答
数据结构
发布于2025年12月6日 18:14
阅读数 3


评分及理由

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

得分:4分

理由:学生的设计思想与标准答案完全一致,即先统计所有顶点的度,再统计度为奇数的顶点个数,最后判断该个数是否为0或2。思路清晰正确,无逻辑错误。

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

得分:7分

理由:算法描述基本正确,但存在一处关键逻辑错误和一处细节问题。
1. 关键逻辑错误(扣2分):代码中`int * ind=(int*) malloc (sizeof(int));` 这一行存在严重问题。`malloc`分配的空间大小仅为`sizeof(int)`,即一个整数的空间,但后续却当作大小为`G.numVertices`的数组来使用,这会导致内存访问越界,程序行为未定义。正确的做法应为`malloc(G.numVertices * sizeof(int))`。这是一个核心的逻辑/实现错误。
2. 细节问题(不扣分):在第一次识别的代码中,`G.Edges[i][j]`应为`G.Edge[i][j]`,但在第二次识别中已修正。根据“误写不扣分”原则,此处不扣分。
3. 除此之外,算法的核心流程(计算度、统计奇数度顶点、判断)是正确的,代码结构清晰,注释得当。

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

得分:2分

理由:学生第二次识别结果正确给出了时间复杂度O(n²)和空间复杂度O(n),分析正确。第一次识别中的“时间复杂度O(n)”是明显错误,但根据“两次识别中只要有一次正确则不扣分”的原则,此处不扣分。

题目总分:4+7+2=13分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发