Если бы у меня был массив целых чисел со знаком, например:
Array
(
[0] => -3
[1] => 1
[2] => 2
[3] => 3
[4] => 3
)
Чтобы получить уникальные значения, я бы инстинктивно использовал array_unique
, но, подумав, я мог бы дважды выполнить array_flip
, что дало бы тот же эффект, и Думаю, это будет быстрее?
array_unique
O (n log n) из-за используемой операции сортировки
array_flip
O (n)
Верно ли я в своих предположениях?
ОБНОВЛЕНИЕ / ПРИМЕР:
$intArray1 = array(-4,1,2,3);
print_r($intArray1);
$intArray1 = array_flip($intArray1);
print_r($intArray1);
$intArray1 = array_flip($intArray1);
print_r($intArray1);
Array
(
[0] => -3
[1] => 1
[2] => 2
[3] => 3
[4] => 3
)
Array
(
[-3] => 0
[1] => 1
[2] => 2
[3] => 4
)
Array
(
[0] => -3
[1] => 1
[2] => 2
[4] => 3
)