C语言计算两个有序数组中的公共元素

C语言计算两个有序数组中的公共元素,第1张

概述C语言计算两个序数组中的公共元素

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

求两个有序数组的共同元素,比如数组a={1,2,3,8,9}和b={8,9,10},则输出output={8,9}
// 找出两个数组的共同元素int* FindCommon(int* a,int* b,int nA,int nB,int& nOut){    int i = 0;    int j = 0 ;	vector<int> vec_comm;	int* output = NulL;	    while (i < nA && j < nB)    {        if (a[i] < b[j])            ++i ;        else if(a[i] == b[j])        {			vec_comm.push_back(a[i]);            cout << a[i] << endl ;            ++i ;            ++j ;        }        else// a[i] > b[j]            ++j ;    }	nOut = vec_comm.size();	int nCoun = 0;	if (nOut>0)	{		output=new int[nOut];		vector<int>::iterator itorComm;		for(itorComm=vec_comm.begin(); itorComm!=vec_comm.end(); itorComm++)		{			output[nCoun] = *itorComm;			nCoun++;		}	}	return output;}
测试代码
int main(){	int* a= new int[6];	int* b= new int[3];		a[0]=2;	a[1]=3;	a[2]=4;	a[3]=6;	a[4]=8;	a[5]=9;		b[0]=8;	b[1]=9;	b[2]=10;	int nOut = 0;	int* output = FindCommon(a,b,6,nOut);	for (int i=0; i<nOut; i++)	{		cout << output[i] << "," ;	}	cout << endl;		delete[] a;	a=NulL;	delete[] b;	b=NulL;		delete[] output;	output=NulL;	cout << endl;		return 0;}

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的C语言计算两个有序数组中的公共元素全部内容,希望文章能够帮你解决C语言计算两个有序数组中的公共元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1232301.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存