第一种方法

假设你的范围是之间是连续的(其实不连续也很容易实现)、没有重合的(这个没问题吧),那么通过对范围的起始位置排序,就可以很容易地用二分来实现。

$ranges = array(1, 100, 212, 324, 382, 465, 552);

然后你要做的事情就是用二分查找在ranges里面找到一个a[i]满足a[i] <= t && t < a[i+1]

第二种方式

<?php
function sorts($stage_data,$stage_num) {
 array_push($stage_data,$stage_num);
 $data = array_unique($stage_data);
 //asort($data);
 sort($data);
 //var_dump($data);
 return array_search($stage_num,$data);
}
$stage_data = array(0,26,51,76,100);
$stage_num  = 16;
echo sorts($stage_data,$stage_num);
//res:1
?>

数据量大的时候个人没有做测试,不知道那种性能最优!

php 如何快速判断一个数字属于什么范围相关推荐

  1. php判断数值大小_php 快速判断一个数字属于什么范围的实现方法

    需求是这样 ... if ( $foo > 0 && $foo < 100 ) $bar = 1; elseif ( $foo > 99 && $fo ...

  2. 如何快速判断一个数字是否是2的n次方

    public boolean check(int m) {if(n < 1) return false;int n = m & m(m-1);return n == 0; } 定义2的n ...

  3. 用mod函数判断奇偶C语言,Excel2007中利用if和mod函数判断一个数字是否为奇偶

    判断一个数字是否为奇偶的方法有很多,可以使用眼力来进行快速判断,也可以使用函数来进行处理.第一种方法适用于数据量很少的情况,如果数据量比较庞大就不适宜了:第二种方法适用于数据量比较大的情况下,理论上靠 ...

  4. java 判断int是几位_快速判断一个int值是几位数

    快速判断一个int值是几位数 判断一个int值是几位数,想到除法和模运算了,偶然在Java标准API源码中发现的写法,很强大. 文艺青年(存在Integer包中) public class Test ...

  5. php对手时间戳判断,PHP 中判断一个数字是否是Unix 时间戳

    PHP 中判断一个数字是否是Unix 时间戳 在php中一个有效的时间是从 1970-01-01 07:00:00 – 2038-01-19 03:14:07. 首先一个时间戳中肯定没有小数点. 将 ...

  6. c++判断一个数字是否为buzz number的算法(附完整源码)

    C++判断一个数字是否为buzz number的算法 C++判断一个数字是否为buzz number的算法完整源码(定义,实现,main函数测试) C++判断一个数字是否为buzz number的算法 ...

  7. C++判断一个数字是否是某个数字的阶乘(附完整源码)

    C++判断一个数字是否是某个数字的阶乘算法 C++判断一个数字是否是某个数字的阶乘算法完整源码(定义,实现,main函数测试) C++判断一个数字是否是某个数字的阶乘算法完整源码(定义,实现,main ...

  8. python编写一个函数判断一个数是否为素数是则返回yes_编写函数isPrime,判断一个数字是否为素数,是则返回字符串 YES ,否则返回字符串 NO 。_学小易找答案...

    [填空题]语句 x = (3,) 执行后x的值为_______________. [填空题]字典对象的___________方法可以获取指定"键"对应的"值", ...

  9. 如何快速判断一个文件是否为病毒

    如何快速判断一个文件是否为病毒 这篇文章主要是快速辨别正常文件与病毒,我自己也不是专业人员,方法是我自己总结出来的,很业余,不过我觉得还是有些用处的.如果你有更好的办法,欢迎跟帖提出.下面正文开始. ...

最新文章

  1. ABP框架展示异常信息
  2. [转载]ASP.NET MVC:通过 FileResult 向 浏览器 发送文件
  3. linux编程综合案例
  4. 在 mingw32 上编译 libvpx 1.7.0 时的注意事项
  5. 计算机二级考试3月时间安排,2017年3月份计算机二级考试时间安排
  6. 计算机玩游戏不能全屏,玩游戏屏幕两边有黑条?教你简单几步轻松解决-win7玩游戏不能全屏...
  7. win10文件夹加密_(十六)小众但好用:免费开源免注册的同步盘加密工具 Cryptomator...
  8. hdu1005 Number Sequence(寻找循环节)
  9. kafka分区分配策略
  10. Xshell远程连接Linux失败
  11. 暗黑系?No...,打造一款 IDEA 护眼主题方案!
  12. 广告图片在线制作网站源码
  13. I2C驱动12864液晶模块程序分享ARDUINO UNO
  14. 电影中的计算机 过去与未来
  15. Java中的抽象类如何理解——详解
  16. ffmpeg x264编码参数
  17. uni-app 将app运行在夜神安卓模拟器
  18. laravel 基础教程 —— Eloquent
  19. matlab 直流无刷电机,无刷直流电机的matlab仿真.pdf
  20. Mac Office 怎么设置单面打印

热门文章

  1. mysql游标事例_MySQL游标语法实例
  2. Go语言环境安装,验证go语言环境、使用文本编辑器编写一个go hello world,Go lang IDE安装,在golang中新建一个go程序
  3. Kafka中topic的Partition,Kafka为什么这么快,Consumer的负载均衡及consumerGroup的概念(来自学习笔记)
  4. 03_Android项目中读写文本文件的代码
  5. 1高并发服务器:多路IO之select
  6. C与C++中struct及C++中struct与class的区别
  7. 好程序员web前端技术之CSS3过渡
  8. 春运前五日全国累计发送旅客3.49亿人次 同比增0.58%
  9. python笔记第二天
  10. 专门用来显示大量数据的视图:AdapterView(1)