文章

2

粉丝

0

获赞

0

访问

178

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

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

(1)使用一个辅助数组cnt来记录每个元素出现的次数,数组下标即为对应元素。先遍历整个数组统计出现次数,再遍历一次输出cnt数组中值为1的元素。

(2)

#include <iostream>

using namespace std;

const int N = 100010;

int cnt[N], a[N];

int main()
{
    int n;
    cin >> n;
    for (int i = 0; i < n; i ++ )
    {
        cin >> a[i];
        cnt[a[i]] ++ ;
    }
            
    for (int i = 0; i < n; i ++ )
    {
        if (cnt[a[i]] == 1) cout << a[i] << endl;
    }
    
    return 0;

(3)时间复杂度O(N)


评分及理由

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

得分:1分

理由:学生的设计思想虽然可以解决问题,但不符合题目要求的“时间上尽可能高效”的条件。题目中明确说明“相同元素一定相邻”,可以利用这一特性设计更高效的算法(如标准答案中的方法)。学生的解法使用了辅助数组和两次遍历,时间和空间复杂度均不如标准答案高效。

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

得分:4分

理由:学生的代码实现了统计元素出现次数的功能...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发