我正在寻找一种有效的算法,它允许我在多维数组中搜索特定值。我有这样的事情:
$stuff = array(
array(
'id' => 'abc123',
'name' => 'test'
'contents' => 'Lorem ipsum'
),
array(
'id' => 'abc123',
'name' => 'test'
'contents' => 'Lorem ipsum'
),
array(
'id' => 'abc123',
'name' => 'test'
'contents' => 'Lorem ipsum'
),
array(
'id' => 'abc43',
'name' => 'test'
'contents' => 'Lorem ipsum'
),
array(
'id' => 'xyzh31',
'name' => 'test'
'contents' => 'Lorem ipsum'
),
);
我必须找到id = abc43的项目。我怎样才能有效地做到这一点?你知道一个比遍历整个阵列更好的算法吗?
答案 0 :(得分:0)
我认为你应该使用array_multisort()这是有效率的,我个人用它来搜索矩阵中的值。
答案 1 :(得分:0)
您可以使用前面描述的array_multisort(),然后实现二进制搜索算法。我将尝试用seudocode来描述它。