У меня возникают проблемы с попыткой выяснить способ, которым я могу решить следующее: где, если элементы массивов являются общими для друг друга, они сливаются, образуя новый массив друг с другом.
Например, если у меня есть:
$array = [ [0,4], [1,2], [1,3], [3,2] ]
Тогда новый массив будет выглядеть так:
$newarray = [ [0,4], [1,2,3] ]
Если массивы $array
которые имеют общие элементы, затем сливаются, я пробовал пару способов, таких как цикл по массиву и сравнение отдельных элементов, но просто не могу обойти его, любая помощь будет отличной
Еще один простой пример:
$array2 = [ [0,1], [3,4], [4,2], [2,3], [6,5] ];
$newarray2 = [ [0,1], [2,3,4], [5,6]]
благодаря
$array2 = [ [0,1], [3,4], [4,2], [2,3], [6,5] ];
$wrk = array_count_values(call_user_func_array('array_merge', $array2));
ksort($wrk);
$result = [];
$prevValue = -INF;
$i = -1;
foreach($wrk as $key => $value) {
if ($value != $prevValue) {
$prevValue = $value;
++$i;
}
$result[$i][] = $key;
}
var_dump($result);