这是一段看似非常特殊的C++代码.出于某种奇怪的原因,奇迹般地对数据进行排序使得代码几乎快了六倍.
#include <algorithm>
#include <ctime>
#include <iostream>
int main()
{
// Generate data
const unsigned arraySize = 32768;
int data[arraySize];
for (unsigned c = 0; c < arraySize; ++c)
data[c] = std::rand() % 256;
// !!! With this, the next loop runs faster.
std::sort(data, data + arraySize);
// Test
clock_t start = clock();
long long sum = 0;
for (unsigned i = 0; i < 100000; ++i)
{
// Primary loop
for (unsigned c = 0; c < arraySize; ++c) …Run Code Online (Sandbox Code Playgroud) 考虑下面的脚本.两个只有三个值的数组.当我使用array_intersect()比较这两个数组时.结果很快.
<?php
$arrayOne = array('3', '4', '5');
$arrayTwo = array('4', '5', '6');
$intersect = array_intersect($arrayOne, $arrayTwo);
print_r($intersect );
?>
Run Code Online (Sandbox Code Playgroud)
我的问题是array_intersect()的效率是多少.是否我们比较两个都有1000个值的数组.会产生更好的结果.....我们需要使用一些哈希函数来处理快速找到常用值这将是有效的??? ..我需要你的建议...
我正在做一个应用程序.如果有人来登录并使用facebook login.then应用程序将获取他的朋友列表,并查找是否有任何朋友在我的应用程序之前评论并显示给他.大概一个朋友可能在Facebook有200到300个朋友,db有超过1000条记录.我需要找到有效的我怎么能这样做.......