文章

19

粉丝

0

获赞

0

访问

645

头像
【250518年】408计算机统考真题模拟考试 - 第41题答案笔记
数据结构
发布于2025年5月27日 15:15
阅读数 83

计算机考研408统考历年真题及答案解析

(1)从a0遍历数组,检查元素的后一个是否有相同的如果有相同的则i=i+2,如果无相同的则直接输出该元素。

(2)#include <iostream> #include <vector> using namespace std; int main() { vector<int> arr = {1, 1, 2, 3, 3, 4, 4}; // 示例数组,元素按相邻相同排列 int n = arr.size(); for (int i = 0; i < n; ) { if (i + 1 < n && arr[i] == arr[i + 1]) { // 如果后一个元素相同,跳过两个元素 i += 2; } else { // 如果当前元素没有相同的后继,说明是只出现一次的元素 cout << "只出现一次的元素是: " << arr[i] << endl; break; } } return 0; }

(3)时间复杂度为o(n)


评分及理由

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

得分:3分

理由:学生的设计思想与标准答案一致,都是通过遍历数组并比较相邻元素来找出仅出现一次的元素。思路清晰且正确,因此不扣分。

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

得分:8分

理由:学生的代码实现与标准答案逻辑一致,通过遍历数组并比较相邻元素来找出目标元素。代码结构清晰,关键部分有注释说明(虽然是用中文描述的),且正确处理了边界情况(如最后一个元素为目标元素的情况)。因此不扣分。

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

得分:2分

理由:学生正确分析了算法的时间复杂度为O(n),与标准答案一致,因此不扣分。

题目总分:3+8+2=13分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发