或者用CUDA用显卡多线程去找,
我是来看一下大神怎么搞得
路过打酱油
表示不懂呢。
我只是路过打酱油的
先标记, 以后有空再看看
先标记, 以后有空再看看
看了半天也不见楼主回复一下,如果有更好的解决方案不妨拿出来和大家分享一下哈
为什么那么多打酱油的啊 不过我也是为了鱼币来的
看看是什么
如果只是查找一次的话 遍历是最快的方法 。
如果需要查找很多次的话,建立哈希表是最快的方法。。
不明觉厉:loveliness:
腾讯的肯定厉害
我只是路过打酱油的
本人表示连题目意思都看不清楚
折半查找吧!
如果是有索引就好了
使用快速查找算法
如果数据的存放是向内存那样子(一个连续的地址,每个地址对应一个位置来存放一个数值),并且每个位置中的值都不知道(且都不同)。由于题目中说,这个数值是随机产生的,从概率论的角度上过来说,每个位置出现的都有可能,并且每个位置都没有特征,那么只能够随机查找(即从头开始查找)——在上面这种假设的前提下不可能会有其他好的方法了。其查找次数的期望值为50万。
其次,如果这100万个数具备有一定的特征,那么就涉及到数据的存储结构方面了,如果是有序的,就可以用折半查找,但一般还要排序先。。。。
最后,可以换一个思维,因为100万太大了,所以不要我们去找这个数,而让这个地址每次随机产生一个数后就发送个消息给我们,告诉我们的地址是什么,这才是最容易的方法(毕竟是多对一的东西)。。。。不过这个方法好像不太符合题意。。:shutup:
我只是路过打酱油的