リストから重複した値を削除する方法はありますか? 独自のメソッドを作成しようとしていましたが、重複値の量によってはかなりの時間がかかります:
$arr = new SplDoublyLinkedList();
for ($i = 0; $i < count($arr); $i++) {
for ($j = $i; $j < count($arr); $j++) {
if ($arr[$i] == $arr[$j] && $i != $j) {
$arr->offsetUnset($j);
$j -= 1;
}
}
}
たとえば、リストに 4000 個のアイテムと約 1000 個の一意のアイテムがある場合、これらのアイテムを削除するのに約 7 秒かかります。