【算法•日更•第二期】查找算法:三分VS二分
▎前言:函数
如果你已经上过初二的数学课了,那么你十有八九会被函数折磨到吐血,这是一种中考压轴题类的题目,往往分类讨论到你恶心。不过没学过也不打紧,现场讲解一下:
☞『数学中的函数』
一般地,如果在一个变化过程中有两个变量x和y,并且对于变量x的每一个值,变量y都有唯一的值与它对应,那么我们称y是x的函数,x是自变量。(copy自八上数学BS教材)
表示函数的方法:列表法、关系式法和图像法。(copy自八上数学BS教材)
可能有些枯燥,举个例子:小明从家出发,去旅游,速度是2m/s,如果他不歇下来,那么x小时后就会走2x米,如果用y来表示路程,那么就有y=2x,那么y就是x的函数。
表示成图像是这样的:
细细一看便会发现直线上的点y轴的值总是x轴值的2倍,这就是函数的图像。
还有这些:
像这样的函数都是单调函数。
☞『单调函数』
一般的,不强调区间的情况下,所谓的单调函数是指, 对于整个定义域而言,函数具有单调性。而不是针对定义域的子区间而言。举个例子,反比例函数是一个具有单调性的函数,而不是一个单调函数,因为在反比例函数的定义域上,并不呈现整体的单调性。单调函数只是单调性函数中特殊的一种。区间具有单调性的函数并不一定是单调函数,而单调函数的子区间上一定具有单调性。具有单调性函数可以根据区间不同而单调性不同。(copy自百度)
这就是定义了,猜你也看不懂,一句话概括:函数y的值随着自变量x的增大而增大或函数y的值随着自变量x的增大而减小,不能出现随着x增大而yx却先增大后减小之类的情况。
☞『单峰函数』
单峰函数是在所考虑的区间中只有一个严格局部极大值(峰值)的实值函数。如果函数f(x)在区间[a, b]上只有唯一的最大值点C,而在最大值点C的左侧,函数单调增加;在点C的右侧,函数单调减少,则称这个函数为区间[a, b]上的单峰函数。(copy自百度)
单峰函数不太好解释,直接上图吧:
红点处就是这个函数的峰,就像山的峰一样,而下图却有两个峰,不属于单峰函数:
☞『计算机中的函数』
函数是指一段在一起的、可以做某一件事的程序。
学会了数学上的函数,可别忘了计算机函数了。
感觉前言说太多了,赶紧切入正题:
▎算法:二分&单调函数
学过二分查找(不会的话戳这里)的人都知道:二分是一种查找值的算法,但是前提是查找的数是已经排好序的(升序降序无所谓),才能二分查找。
那么用在函数上时呢?很容易就能辨认出只有单调函数才符合已经排好序。
▎算法:三分&单峰函数
☞『三分』
与二分相对比,二分形象一点说是切一刀分成两份,那么三分就是切两刀分成三份,怎么切呢?二分是取中间的(中点),那么三分就是取两个三等分点呗。
当出现单峰函数时由于函数值没有排好序,所以二分只会力不从心,而三分则是这类问题的常用算法。
三分常常用来找单峰函数峰值。
☞『算法思想』
1)取两个三等分点。
2)取中点。
3)比较大小。
若左边的三等分点大于右边的三等分点,则放弃右区间。
否则放弃左区间。
4)反复这样,直到找到峰值。
【算法•日更•第二期】查找算法:三分VS二分的更多相关文章
- 【算法•日更•第二十八期】图论:强连通+Tarjan算法(一)
▎前言 一直都想学习这个东西,以为很难,结果发现也不过如此. 只要会些图论的基础就可以了. ▎强连通 ☞『定义』 既然叫强连通,那么一定具有很强的连通性. 强连通:就是指在一个有向图中,两个顶点可以互 ...
- 【算法•日更•第二十七期】基础python
▎前言 看到这个题目,你一定会很好奇,为什么学打NOIP的要学习python?其实python对我们是很有用的! NOIP虽然不支持使用python提交代码,但是在NOILinux上天生自带pytho ...
- 【算法•日更•第二十三期】数据结构:two-pointer(尺取法)&莫队
▎引入 ☞『例题』 一道十分easy的题: 洛谷P1638 长度为n的序列,m种数 找一个最短区间,使得所有数出现一遍 n≤1e6 ,m≤2e3. ☞『分析』 这道题非常的简单,但是如果不会two-p ...
- 【sky第二期--PID算法】--【智能车论坛】
[sky第二期--PID算法] 想学PID的可以来[智能车论坛]这里有我发布的资料http://bbs.tekbots.eefocus.com/forum.php?mod=viewthread& ...
- 【算法•日更•第十九期】动态规划:RMQ问题
▎前言 首先先来说一下RMB是什么,当然是人民币啦. 今天我们要学的这个东西不一般,叫做RMQ问题,那么它和RMB有什么关系呢?待小编细细说来. ▎前置技能:动态规划 不会的同志请戳这里迅速了解动态规 ...
- 【算法•日更•第五十期】二分图(km算法)
▎前言 戳开这个链接看看,惊不惊喜,意不意外?传送门. 没想到我的博客竟然被别人据为己有了,还没办法投诉. 这年头写个博客太难了~~~ 之前小编写过了二分图的一些基础知识和匈牙利算法,今天来讲一讲km ...
- 【算法•日更•第三十九期】迭代加深搜索:洛谷SP7579 YOKOF - Power Calculus 题解
废话不多说,直接上题: SP7579 YOKOF - Power Calculus 题意翻译 (略过没有营养的题干) 题目大意: 给出正整数n,若只能使用乘法或除法,输出使x经过运算(自己乘或除自己, ...
- 【算法•日更•第十二期】信息奥赛一本通1585:【例 1】Amount of Degrees题解
废话不多说,直接上题: 1585: [例 1]Amount of Degrees 时间限制: 1000 ms 内存限制: 524288 KB提交数: 130 通过数: 68 [ ...
- 【算法•日更•第三十五期】FF算法优化:EK算法
▎写在前面 FF算法传送门 之前我们已经学过了FF算法(全称Ford-Fulkerson算法)来找最大流,但是这种算法仍有诸多不对的地方. 其实这种算法存在着严重的效率的问题,请看下面的图: 以这个图 ...
随机推荐
- 题解 洛谷 P5331 【[SNOI2019]通信】
考虑用费用流解决本题. 每个哨站看作一个点,并将其拆为两个点,建图方式为: \(S \longrightarrow x_i\) 容量为\(1\),费用为\(0\) \(x_i \longrightar ...
- vant ui 吸顶组件慎用 2020-1-15
- java 如何正确的输出集合或者对象的值
java 如何正确的输出集合或者对象的值 一般out.println(Object) 和 System.out.println(Object),其中输出的都是Object.toString()方法.重 ...
- 图像增强 | CLAHE 限制对比度自适应直方图均衡化
1 基本概述 CLAHE是一个比较有意思的图像增强的方法,主要用在医学图像上面.之前的比赛中,用到了这个,但是对其算法原理不甚了解.在这里做一个复盘. CLAHE起到的作用简单来说就是增强图像的对比度 ...
- hadoop2.7.3+spark2.0.1+scala2.11.8集群部署
一.环境 4.用户 hadoop 5.目录规划 /home/hadoop/app #程序目录 /home/hadoop/data #数据目录 #打开文件的最大数 vi /etc/sec ...
- laravel 安装语言包
一.composer依赖网站地址:https://packagist.org/ 二.在搜索框输入: laravel-lang 三.点击进入,根据自己的版本进行安装: composer require ...
- 02 . Beego框架结构组织,路由及项目初始化
Beego项目组织结构 conf conf:项目配置文件所在的目录,项目中有一些全局的配置都可以放在此目录下.默认的app.conf文件中默认指定了三个配置: // 1)appname = Beego ...
- vue多个路由复用同一个组件的跳转问题(this.router.push)
因为router-view传参问题无法解决,比较麻烦. 所以我采取的是@click+this.router.push来跳转 但是现在的问题是跳转后,url改变了,但是页面的数据没有重新渲染,要刷新才可 ...
- 再见了Antirez永远的Redis之神
其实antirez(Redis作者)退出Redis维护一发布我就在很多咨询网站上面看到了,当时也没太多感慨. 今天比较有空想去看看霉霉Twitter的,然后看到了antirez,我就又一次回顾了他的退 ...
- jzyz 题库 题目选做
题库中也有很多我想不出来的模拟赛的题目.做还是必要的.做自己的题目 时间很紧 想想自己的文化课 我又没有那么强 我必须得刷. LINK:水题一道 发现是一道计数题 计数题拿高分的才是王者,但是 计数题 ...