相关疑难解决方法(0)

为什么处理排序数组比处理未排序数组更快?

这是一段看似非常特殊的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)

c++ java optimization performance branch-prediction

2万
推荐指数
27
解决办法
142万
查看次数

php array_intersect()效率

考虑下面的脚本.两个只有三个值的数组.当我使用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条记录.我需要找到有效的我怎么能这样做.......

php

7
推荐指数
3
解决办法
8332
查看次数

标签 统计

branch-prediction ×1

c++ ×1

java ×1

optimization ×1

performance ×1

php ×1