我有一个数组,例如(它可以是任何东西,但它已经订购):

array(1,7, 12, 18, 25);

我需要找到最接近该数组的数字.

以上数组:

$needle = 11;

我想要检索的数组中的数字是7.

最接近11的数字应该是12,但我不想要最接近的数字,我想要最小的最接近的数字,如果这是有道理的.

另一个例子:

>输入26检索到的数字应为25

>输入1检索到的数字应为1

>输入6检索到的数字应为1

>输入7检索到的数字应为7

>输入16检索到的数字应为12

我发现了一个很好的功能,但它只检索最接近的数字,而不是最小的最接近的数字:

function closestnumber($number, $candidates) {

for($i = 0; $i != sizeof($candidates); $i++) {

$results[$i][0] = abs($candidates[$i] - $number);

$results[$i][1] = $i;

}

sort($results);

$end_result['closest'] = $candidates[$results[0][1]];

$end_result['difference'] = $results[0][0];

return $end_result;

}

$closest = closestnumber(8,array(1,7, 12, 18, 25));

echo "Closest: ".$closest['closest']."
";

echo "Difference: ".$closest['difference'];

提前致谢.

解决方法:

这看起来像家庭作业,但我会幽默你:

function closestnumber($number, $candidates) {

$last = null;

foreach ($candidates as $cand) {

if ($cand < $number) {

$last = $cand;

} else if ($cand == $number) {

return $number;

} else if ($cand > $number) {

return $last;

}

}

return $last;

}

标签:php,numbers,closest

来源: https://codeday.me/bug/20190726/1544649.html

php 数组中连续的数字,php数组中最近的次要数字相关推荐

  1. 音乐在html中连续播放,怎么让PPT中背景音乐在多个页面中连续播放

    使用PPT幻灯片,有时我们给幻灯片添加了背景音乐,使PPT的效果更好,更能渲染会场的气氛.以下是学习啦小编为您带来的关于PPT中背景音乐在多个页面中连续播放,希望对您有所帮助. PPT中背景音乐在多个 ...

  2. java 数组是连续存储吗_数组在Java中储存在()中_学小易找答案

    [单选题]定义了一维 int型数组a[10]后,下面错误的引用是() [多选题]下面对图层上的蒙板的描述哪些是正确的: [判断题]P 型半导体带正电, N 型半导体带负电. ( ) (5.0分) [单 ...

  3. 《团队开发一(求一个数组的连续的子数组之和的最大值)》

    <团队开发一(求一个数组的连续的子数组之和的最大值)> (1)设计思想:一般的,求一个数组的最大子数组之和即是按数组顺序依次让前几个数的和与下一个数进行比较,设一变量来装每次比较后的较大的 ...

  4. requestAnimationFrame运动框架实现播放中连续变速动画效果

    上期已介绍requestAnimationFrame运动框架的基本概念和特性,本期继续了解运动框架的用途,在制作动画效果方面,运动框架可以在播放动画的同时自然.流畅地响应连续变速操作,还能解决画面卡顿 ...

  5. 输入一个字符串,内有数字和非数字字符,例如 A123x456 17960? 302tab5876 将连续的数字作为一个整数,一次存放到一数组a中, 例如123存放在a[0]中,456放在a[1]中……

    /*输入一个字符串,内有数字和非数字字符,例如 A123x456 17960? 302tab5876 将连续的数字作为一个整数,一次存放到一数组a中, 例如123存放在a[0]中,456放在a[1]中 ...

  6. 获取数组中连续相同的元素

    这里分享一个处理连续数据的两个办法,记录一下,说不定自己以后还会遇到. (1)纯数组类型 如代码,将里面连续相同的数字找出来 oldArr = [1,1,,2,3,3,3,7,8,9,15,17,17 ...

  7. php取数组中连续数,PHP实现求连续子数组最大和问题2种解决方法

    本文实例讲述了PHP实现求连续子数组最大和问题2种解决方法.分享给大家供大家参考,具体如下: 问题描述 求子数组的最大和 题目描述: 输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整 ...

  8. JavaScript算法题:查找数字在数组中的索引

    翻译:疯狂的技术宅 原文:medium.freecodecamp.org/how-to-find- 编写算法时,排序是一个非常重要的概念.它有各种各样的种类:冒泡排序.希尔排序.分块块排序,梳排序,鸡 ...

  9. 【Py面试题】找到数组或整数列表中连续子序列的最大和

    测试面试题 找到数组或整数列表中连续子序列的最大和 找到数组或整数列表中连续子序列的最大和,并满足以下条件: 列表仅由正数组成并且最大和是整个数组的总和. 如果列表仅由负数组成,则返回 0 空列表被认 ...

最新文章

  1. Linux没有安装gcc如何在线安装(直接在Linux终端安装)
  2. Spring State Machine:它是什么,您需要它吗?
  3. Javascript:前端利器 之 JSDuck
  4. 灵魂拷问!java数据结构面试题
  5. 智能手机拍照进化论:从传感器到算法摄影
  6. Canvas 通过改变渐变色渐变百分比位置做飞线效果
  7. 开心网倒闭变卖,创始人程炳皓反思的亲笔信全文
  8. 数据结构-单链表LNode,*LinkList
  9. App主界面交互框架(其中包括标签式、跳板式、列表式、旋转木马、抽屉式、点聚式、陈列馆式、瀑布流)
  10. Web—13-判断网站请求来自手机还是pc浏览器
  11. 凌小宁教授给软件新人的演讲——选择的力量
  12. 通过思科模拟器配置思科2960交换机的办法:
  13. 【转载】年终总结 算法数据的思考 结尾彩蛋
  14. vscode的seting配置
  15. 线性表篇 什么是线性表
  16. matlab三维螺旋,Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图...
  17. 百度贴吧里见到的一道题
  18. 使用NetBox实现ASP网页封装为EXE教程
  19. 【C++程序设计教程(第三版)钱能】 学习笔记 上半部/C++过程化语言基础
  20. 思想“一念之间”,读书笔记

热门文章

  1. Leetcode 142. Linked List Cycle II
  2. 4.2Python数据类型(2)之布尔类型
  3. HDFS的Java操作
  4. 提高你的迅雷速度,绝对值得一看
  5. 华为机试HJ42:学英语
  6. 谈谈我自己为什么突然想写技术博客
  7. jbod ugood 磁盘驱动状态_NTFS磁盘读写工具Mounty免费版
  8. mongodb模糊查询_我叫Mongo,收了「查询基础篇」,值得你拥有
  9. 多核处理器_游戏爱好者的福音!AMD全新一代高性能多核处理器3950X
  10. 华为云大数据存储的冗余方式是三副本_揭秘!10+位DBA大神测评华为云DDS增强版实感...