SimbiX
Новичок
Дан массив произвольного размера с числами в пределах от 1 до 1,000,000. Массив не отсортирован. В этом массиве все числа уникальные, кроме одного числа, которое повторяется два раза, Нужно найти это число.
Вот написал так:
На моей машине выполняется за 0,4 сек в среднем, интересует можно ли как-то сделать это быстрее ?
Спасибо за внимание
Вот написал так:
PHP:
// Create array and shuffle him
$array = range(1, 1000000);
shuffle($array);
// Set the duplicate value
$array[mt_rand(1, 1000000)] = 40;
// Begin calculating
$begin = microtime(TRUE);
$computed = array_count_values($array);
$number = array_search(max($computed), $computed);
$end = microtime(TRUE);
// Output
echo $number;
echo sprintf("\nExecution time: %.3f", $end - $begin);
Спасибо за внимание
