2021-07-26 王道 数据结构 p18 第13题

王道 数据结构 p18 第13题

2021-07-26 王道 数据结构 p18 第13题_第1张图片

#include<iostream>
using namespace std;

//法一 最优解 题目“设计一个在时间上尽可能高效的算法”
// 即暗示可以用空间换时间,一般用O(n)的空间复杂度 即一个长度为n的一维数据 
int noFindMin(int A[],int n){
	int B[n],i=0;
	for(i=0;i<n;i++)
	{
		B[i]=0;//必须初始化B数组 
	}
	for(i=0;i<n;i++)
	{
		if(A[i]>0&&A[i]<=n)
		B[A[i]-1]=1;
	}
	for(i=0;i<n;i++)
	{
		if(B[i]==0)
		break;
	}
	return i+1;
}
//时间复杂度O(n),空间复杂度O(n) 
int main(){
    int A[]={0,5,5,3,5,7,5,5};
    int B[]={1,2,3,4,5,6,7,8};
    cout<<"数组A最小未出现的整数是"<<noFindMin(A,8)<<endl;
    cout<<"数组B最小未出现的整数是"<<noFindMin(B,8);
}

2021-07-26 王道 数据结构 p18 第13题_第2张图片

你可能感兴趣的:(考研,数据结构,王道)