各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案

Str Tom,为分享PHP技术和解决方案,贡献一份自己的力量!
收藏本站(不迷路),每天更新好文章!
当前位置:首页 > CMS教程 > PHP

php如何实现统计一个数字在排序数组中出现的次数(代码)

管理员 2023-09-05
PHP
128

php如何实现统计一个数字在排序数组中出现的次数(代码)

内容导读

收集整理的这篇技术教程文章主要介绍了php如何实现统计一个数字在排序数组中出现的次数(代码),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1418字,纯文字阅读大概需要3分钟

内容图文

本篇文章给大家带来的内容是关于php如何实现统计一个数字在排序数组中出现的次数(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

统计一个数字在排序数组中出现的次数。
1.有序的数组查找,使用二分法
2.二分法查找第一次出现的位置,二分法查找最后一次出现的位置,end - start +1

left=getLeft(data,k)right=getRight(data,k)retun right-left+1getLeft data,k    left=0    right=arr.length-1    mid=left+(right-left)/2    while  left<=right        if arr[mid]<k    //关键            left=mid+1        else            right=mid-1        mid=left+(right-left)/2    return leftgetRight data,k    left=0    right=arr.length-1    mid=left+(right-left)/2    while  left<=right        if arr[mid]<=k   //关键            left=mid+1        else            right=mid-1        mid=left+(right-left)/2    return right
<?phpfunction GetNumberOfK($data, $k) {        $left=getLeft($data,$k);        $right=getRight($data,$k);        return $right-$left+1;}function getLeft($arr,$k){        $left=0;        $right=count($arr)-1;        $mid=intval($left+($right-$left)/2);        while($left<=$right){                if($arr[$mid]>=$k){//关键                        $right=$mid-1;                }else{                        $left=$mid+1;                }                   $mid=intval($left+($right-$left)/2);        }           return $left;}function getRight($arr,$k){        $left=0;        $right=count($arr)-1;        $mid=intval($left+($right-$left)/2);        while($left<=$right){                if($arr[$mid]<=$k){//关键                        $left=$mid+1;                }else{                        $right=$mid-1;                }                   $mid=intval($left+($right-$left)/2);        }           return $right;}$arr=array(1,2,3,4,4,4,5);$m=GetNumberOfK($arr,4);var_dump($m);

以上就是php如何实现统计一个数字在排序数组中出现的次数(代码)的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php如何实现统计一个数字在排序数组中出现的次数(代码)全部内容,希望文章能够帮你解决php如何实现统计一个数字在排序数组中出现的次数(代码)所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

扫码关注

qrcode

QQ交谈

回顶部