读书人

C++效率有关问题

发布时间: 2013-11-05 14:40:42 作者: rapoo

C++效率问题。
我有n个类似下面的运算

a[m]={0,7};
b[q]={5,7,9....}
a和b中都有7,返回1;

这样程序要计算n*q次,n和q很大,这样程序特别慢,我想减少次数,使用&运算,但是q可能几百。

那怎么做可以降低循环次数啊? C++ 效率
[解决办法]
看这个,上面写快了,写漏了:
for(int i=0;i<n;i++)
{
if(i==k)
coutinue;
else
for(int j=0;j<mi;j++)
{
if(j)
if(aj[j]在哈希表中)
count[aj[j]对应的下标]++;
}
}
检查count数组,只要是"为n的值对应的下标" 所对应的值即为共同数字,否则就不是

复杂度: n*mMax ~n*mMax*mMin

读书人网 >C++

热点推荐