二分法查找数组是否包含某一元素,兼容正反序,代码实现:
<span> <?<span php><span> <span> <span> = (int)<span>['key'<span><span> <span> <span function> search(<span array> <span>, <span><span><span> <span><span> <span> = <span count>(<span>)-1<span><span> <span> = 0<span><span> <span> = <span>[<span>] < <span>[<span><span><span> <span> <span while> (<span true><span><span> <span> = <span>+<span><span><span> <span> = (int)(<span>%2 == 1 ? <span ceil>(<span>/2) : <span>/2<span><span> <span> <span if> (<span> < <span><span><span> <span return> -1<span><span> } <span else> <span if> (<span> == <span>[<span><span><span> <span return> 1<span><span> } <span else> <span if> (<span> > <span>[<span><span><span> <span> ? <span> = <span>+1 : <span> = <span>-1<span><span> } <span else> <span if> (<span> < <span>[<span><span><span> <span> ? <span> = <span>-1 : <span> = <span>+1<span><span> <span><span> <span><span> <span><span> <span> <span> = <span array><span><span> '4', '5', '7', '8', '9', '10', '11', '12' <span> <span><span> <span><span> <span> <span echo> search(<span>, <span><span><span> <span> <span><span> <span> <span rsort>(<span><span><span> <span echo> search(<span>, <span>);</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>
这个没考虑非顺序键的数组,主要是方法,如果需要大家可以自己扩展下。











