文章

67

粉丝

8

获赞

1

访问

8.8k

头像
【2018年】408计算机统考真题模拟考试 - 第41题答案笔记
数据结构
发布于2024年11月18日 16:45
阅读数 137

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

1.创建一个长度为n初值全0的数组numList,遍历给定数组,若元素>0则对应的numList下标+1;遍历numList,元素为0的元素的下标就是未出现过的最小正整数

2.

int main(int* list,int n){
    int numList[n];
    for(int i=0;i<n;i++){
        numList[i]=1;
    }
    for(i=0;i<n;i++){
        if(list[i]>0 && list[i]<n) numList[list[i]-1]++;//若当前元素为正且不超过数组长度则令对应下标+1
    }
    for(i=0;i<n;i++){
        if(numList[i]==0) return i+1;//从头遍历,第一个为0的元素的下标就是未出现过的最小正整数
    }
}

3.时间复杂度O(n),空间复杂度O(n)

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发