php 二分查找

php中文网
发布: 2016-07-29 09:12:56
原创
1075人浏览过

二分查找需要数组有序,效率为o(logn)

宣小二
宣小二

宣小二:媒体发稿平台,自媒体发稿平台,短视频矩阵发布平台,基于AI驱动的企业自助式投放平台。

宣小二 21
查看详情 宣小二
<code><span><span><?php</span><span>#二分查找</span><span><span>function</span><span>binarySearch</span><span>(Array <span>$arr</span>, <span>$target</span>)</span> {</span><span>$low</span> = <span>0</span>;
        <span>$high</span> = count(<span>$arr</span>) - <span>1</span>;

        <span>while</span>(<span>$low</span> <= <span>$high</span>) {
            <span>$mid</span> = floor((<span>$low</span> + <span>$high</span>) / <span>2</span>);
            <span>#找到元素</span><span>if</span>(<span>$arr</span>[<span>$mid</span>] == <span>$target</span>) <span>return</span><span>$mid</span>;
            <span>#中元素比目标大,查找左部</span><span>if</span>(<span>$arr</span>[<span>$mid</span>] > <span>$target</span>) <span>$high</span> = <span>$mid</span> - <span>1</span>;
            <span>#重元素比目标小,查找右部</span><span>if</span>(<span>$arr</span>[<span>$mid</span>] < <span>$target</span>) <span>$low</span> = <span>$mid</span> + <span>1</span>;
        }

        <span>#查找失败</span><span>return</span><span>false</span>;
    }

    <span>$arr</span> = <span>array</span>(<span>1</span>, <span>3</span>, <span>5</span>, <span>7</span>, <span>9</span>, <span>11</span>);
    <span>$inx</span> = binarySearch(<span>$arr</span>, <span>1</span>);
    var_dump(<span>$inx</span>);
<span>?></span></span></code>
登录后复制
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了php 二分查找,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号