>  기사  >  백엔드 개발  >  请问一下PHP怎样在二维数组查找匹配字符串元素效率比较高

请问一下PHP怎样在二维数组查找匹配字符串元素效率比较高

WBOY
WBOY원래의
2016-06-13 12:12:51966검색

请教一下PHP怎样在二维数组查找匹配字符串元素效率比较高
各位好!
不知道这样的标题对不对。
对算法不是很了解,想在一个二维数组中查找一个匹配的字符串元素。
数组的结构是这样的:

<br />array(<br />	2 => array(<br />		'catid' => 2,<br />		'catdir' => 'notice',<br />	)<br />	5 => array(<br />		'catid' => 5,<br />		'catdir' => 'subject',<br />	),<br />	6=> array(<br />		'catid' => 6,<br />		'catdir' => 'news'<br />	),<br />);<br />


是一个二维数组,第一维的下标是第二维的catid的值,顺序但不连续。现在有一个catdir的值,要在这个数组里查找出对应的catid。
刚开始有点二用二分查找,但发现貌似根本行不通。
请教下,有什么比遍历数组更有效的办法?

谢谢!


------解决思路----------------------
内置函数怎么着也比你用代码拼凑的效率高
就算你的表达有误,按查询键组织数据时,效率是最高的
因为哈希表的时间复杂度为 O(0),而一次遍历的时间复杂度为 O(n)

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.