数值区间的模糊匹配,二分查找的应用

news/2024/4/23 18:46:54/

先看图:在这里插入图片描述
需求很明确,要根据左边的值,显示右边的值。

比如,现在拿到的值是 17.12,那么应该显示成 15;拿到 17.599 ,那么应该显示成 20.

先找规律:

为了便于说明,暂且将左边的值设为 x, 右边的值设为 y.

  1. 第一行和最后一行可以写死成 0 与 1500;
  2. 余下的每行,x 的区间是 (min, min+5] , 对应的 y == min + 2.5,

那么,根据规律 2 ,也就是说 y-2.5==min; y+2.5 == max。虽然这里有点投机取巧之嫌(因为刚好是 ± 2.5)。

根据 x 计算 y,如何计算呢?

思考 666 分钟之后,发现这个很难计算,虽然规律是显而易见的,但是,一个任意的 x ,又怎么去匹配到对应的行呢,似乎有点困难。
如果说弄一个 list 之类的容器去记录 x 的区间,这样似乎就失去了计算的意义,跟直接 switch case 也没什么区别了。

于是决定换个思路,从 y 下手,因为 y 的值更少,而且规律更显而易见。

我们这么看,拿到一个 x, 就去跟 (y-2.5, y+2,5]


http://www.ppmy.cn/news/46762.html

相关文章

excel中补齐IP,使得每一段为三位

有一个EXCEL中有IP信息。为10.198.37.183,需要补齐为010.198.037.183;10.68.80.74补齐为010.068.080.074 网上搜了的补齐IP的函数为 TEXT(LEFT(D36,FIND(“.”,D36)-1),“000.”)&TEXT(MID(D36,FIND(“.”,D36)+1,FIND(““,SUBSTITUTE(D36,”.“,””,2))-FIND(“.”,D3…

人工智能论文的风格特点

搞清楚AI领域论文的风格特点是写出一篇高质量AI论文的前提,AI领域的论文有如下显著特点。 1. 论文的架构非常清晰且富有逻辑。一篇高质量的AI论文,读者通过大致扫一眼论文的各级标题就能够对论文的写作思路形成清晰的认识,明白论文各部分之间…

Visual Studio Code跳转到CSS定义

Visual Studio Code 快速跳转到 VUE文件 或 CSS文件的定义位置(跳转到class定义,跳转到css定义),插件Css Peek、Vue Peek 对提升开发效率上,事半功倍。 目录 1、跳转到CSS定义 1.1、CSS Peek 1.2、Vue Peek 2、其他…

水务行业怎么运用智能配电

摘要:在构建智慧水务和“双碳”时代背景下,智能配电系统在水务行业中发挥日益突出的重要作用。本文首先回顾了智能配电系统在水务行业的发展历程,并对其应用现状进行了分析,进而展望了智能配电系统在水务行业的发展趋势。 关键词&…

SpringMVC03-文件上传、异常处理、拦截器

SpringMVC03 SpringMVC的文件上传 一 、文件上传的前端必要前提 form 表单的 entcype取值必须是:multipart/form-data。默认值:application/x-www-form-urlencoded,是表单请求正文的类型method 属性取值必须是 post提供一个文件选择域 二…

Flink时间属性

1.概述 Flink支持三种与流数据处理相关的时间概念:Processing Time、Event Time和Ingestion Time。具体如下图所示: 当前Flink仅支持Processing Time和Event Time EventTime:您提供的事件时间(通常是数据的最原始的创建时间&…

容器镜像的设计原理

1 概述: 1.1 历史概要 2016年,Docker制定了镜像规范v2,并在Docker 1.10中实现了这个规范。镜像规范v2分为Schema 1和Schema 2。 Schema 1主要兼容使用v1规范的Docker客户端(从2017年2月起,镜像规范v1不再被Registry支…

Redis高级之IO多路复用和epoll(十二)

nginx 的反向代理也是采用了IO多路复用 1.是什么 I/O 网络 I/O 多路 多个客户端连接(连接就是套接字描述符,即socket 或者 channel),指的是多条 TCP 连接 复用 用一个进程来处理多条的连接,使用单进程就能实现同时处…

MySQL数据库之表的增删改查(基础)

目录 1 新增(Create)1.1 单行数据 全列插入1.2 多行数据 全列插入 2 查询(Retrieve)2.1 全列查询2.2 指定列查询2.3 查询字段为表达式2.4 别名2.5 去重: DISTINCT2.6 排序: ORDER BY2.7 条件查询: WHERE2.8 分页查询: LIMIT 3 修…

javaweb家具购物商城的电商设计与实现

目 录 1 绪论 1 1.1 项目背景 1 1.2 研究意义 1 1.3 本系统概述 2 2系统分析 3 2.1 系统需求分析 3 2.1.1 功能需求 3 2.1.2 性能需求 4 2.2 系统可行性分析 4 2.2.1 技术及开发方法可行性 4 2.2.2 管理可行性 4 2.2.3 经济可行性 5 2.3 业…

Java——树的子结构

题目链接 牛客在线oj题——树的子结构 题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(我们约定空树不是任意一个树的子结构) 假如给定A为{8,8,7,9,2,#,#,#,#,4,7},B为{8,9,2},2个树的结构如下&am…

【图像处理】基于MATLAB的形态学车牌识别

目录 基于MATLAB的形态学车牌识别 基于MATLAB的形态学车牌识别 在这里,我提供一个基于MATLAB的形态学车牌识别示例代码。该代码包括车牌区域的定位、二值化、形态学处理和字符识别等过程。 % 读取图片 img = imread(car.jpg);% 灰度化 gray_img = rgb2gray(img);% 直方图均衡…

6 款顶级 Android 数据恢复软件列表

数据丢失可能会扰乱您的个人/企业生活,如果手动完成,可能很难恢复丢失的数据。Android 数据恢复软件是解决此问题的完美解决方案。这些工具可帮助您快速轻松地从 Android 设备恢复丢失的数据。它可以帮助您恢复照片、视频、笔记、联系人等。 我研究了市…

刘二大人《Pytorch深度学习实践》第十一讲卷积神经网络(高级篇)

文章目录 Inception-v1实现Skip Connect实现 Inception-v1实现 Inception-v1中使用了多个11卷积核,其作用: (1)在大小相同的感受野上叠加更多的卷积核,可以让模型学习到更加丰富的特征。传统的卷积层的输入数据只和一种尺寸的卷积核进行运算&…

计算机视觉:图片数据的预处理

本文重点 图片数据是计算机视觉处理的核心,一般的图片数据并不能直接放到神经网络中,而是应该使用一些数据与处理的方式来解决,这个操作我们称为图片数据的预处理。 图像缩放 图像缩放是指将图像的尺寸调整为所需的大小。在AI中,图像缩放通常用于将图像调整为模型所需的…

接口的多继承多实现

接口的多继承多实现 目录 接口的多继承多实现多继承(接口1 extends 接口2,接口3)多实现(实现类 实现 接口1,接口2)总结1.类与类的关系2.类和接口的关系3.接口与接口的关系 多继承(接口1 extends 接口2,接口…

如何使用TensorFlow进行图像识别,包括使用TensorFlow搭建卷积神经网络模型、训练模型和使用模型进行图像识别!

TensorFlow是Google开源的机器学习库,它可以帮助人们更快地构建、训练和部署基于机器学习的应用程序。TensorFlow支持多种机器学习算法,其中包括图像识别。图像识别是一种广泛应用的机器学习技术,它可以识别图像中的特定物体或场景,并进行分类或识别。 本篇文章将介绍如何…

Debian 11 使用

以下都是在Debian11.6测过 修改源: root用户lsb_release -a #查看Codename: bullseye 对应到源中的版本vi /etc/apt/sources.listdeb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free …

Linux远程连接虚拟机超时,且ip地址找不到问题解决

ip地址虚拟机自动更改: 原因:Linux没有正常关机 解决:从虚拟机在自己电脑上的文件地址中bin目录下,前面几个以.lck的文件全部删除 Linux远程连接虚拟机超时: 原因可能跟上面是一样的,IP地址自动修改之后自…

RocketMQ-01

1. MQ介绍 ##1.1 为什么要用MQ 消息队列是一种“先进先出”的数据结构 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HdlART1t-1681918882436)(img/queue1.png)] 其应用场景主要包含以下3个方面 1)应用解耦 系统的耦合性越高&…