0
我比较阵列的每个元素与阵列的每个其他元素,如果两个元素具有相同的源/目标,目标/源我合并内部阵列与员工例如更有效的方式合并两个阵列
0=> source - 3 target - 4 officers => 0 - 'Aberdeen Asset Management PLC'
1=> source - 3 target - 4 officers => 0 - 'whatever'
将被合并到
0=> source - 3 target - 4 officers => 0 - 'Aberdeen Asset Management PLC', 1 - 'whatever'
下面是数据看起来的样子:
我的代码是1000更多的行要经过真正的低效执行需要大约90秒,这是不可接受的。
foreach ($edges as $i => &$edge) {
for ($j = $i + 1; $j < count($edges); $j++) {
if ($edge['source'] == $edges[$j]['source'] && $edge['target'] == $edges[$j]['target']) {
foreach ($edges[$j]['officers'] as $officer) {
array_push($edge['officers'], $officer);
}
array_splice($edges, $j, 1);
}
}
}
你不能自己解决你的问题? –
@u_mulder好了,如果他告诉你**他需要什么,然后复制粘贴就会容易多了。毕竟,你这样做是免费的,因为你没有什么比做代码更好的做法,所以其他人可以从中获利,为什么不放纵所有愿望呢? :) –