清华学弟函数攻略:一文讲透WPS表格函数二分法(下)

清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

教程(上)集链接:

一文讲透WPS表格函数二分法(上)

在前面,我们已经分析了LOOKUP进行二分法查找的原理。有一个地方我还没有给大家呈现:为什么被查找的数组一定要升序排序?如果不升序,又会怎么样?

大家可以试着做一个小练习:当有源数据表中对应关系是乱序的时候,查找98,会返回那个等级?检验一下你对二分法原理的掌握。

你的答案是:___________。

因此,正确答案是:第7级。你答对了吗?

我们再看一个源数据表降序排序的效果:

你的答案是:___________。

因此,正确答案是:第1级。你答对了吗?

通过上面两个例子可以发现:

对于LOOKUP函数,大部分情况下,要尊重它的查找规则,将源数据表的被查找数组,升序排序。对于LOOKUP函数来说,降序也是一种乱序。

下面我们再回到(上)集中最开始的内容,看看XLOOKUP函数的第5、第6个选用参数,究竟强在哪里:

[匹配模式]中,扩展了更多的方式,还支持通配符匹配。

[搜索模式]中,扩展了多种查找方式,以契合更多排序方式的源数据表。

纵观查找函数大家庭:LOOKUP、VLOOKUP、HLOOKUP、XLOOKUP

XLOOKUP函数以其多向量方向、多查找个数、动态数组灵活呈现形式、多匹配模式、多搜索模式综合考量,可谓查找函数大家庭中,当之无愧的金牌大师。

****(分割线)****

最后我们来看一看,二分法的优势在哪里,为什么后台要使用这种算法:

答案:减少后台计算量,提高计算效率。

我们回顾几次原理分析,在源数据表中,被查找数组的单元格数量为15个,需要比较4次。

这是因为:

一共15个元素

第1轮比较第8个元素,无论结果如何,都会淘汰8个,还剩7个;

第2轮比较第4个元素,无论结果如何,都会淘汰4个,还剩3个;

第3轮比较第2个元素,无论结果如何,都会淘汰2个,还剩1个;

第4轮比较唯一一个元素,返回这个元素(这个元素值<=查找值)或者返回上面那个(这个元素值>查找值),肯定能得出结果。

但如果对于一个拥有15个元素的升序数组,我拿着一个查找值从头扫到尾,我每次比较只能淘汰1个元素,最多可能要比较14次(虽然也可能1次就比出来),但整体正态分布来看,二分法的4次远小于逐个比较的数学期望值,真的可以极大降低内存量,而且数据越多,二分法的优势越明显。

以上两期内容就是我关于WPS表格函数二分法的一点愚见,欢迎各位社区大佬批评指正。

下面是今天练习文档的链接:

【金山文档】 一文讲透WPS表格函数二分法

https://kdocs.cn/l/cnmNsFwMn87y

(上、下)集的文档是同一个,大家下载一个即可。

为不影响社区其他用户查看初始文件,我关闭了在线协作的功能。大家可以将文档下载到本地,自由操作练习哦!

如果你觉得今天的教程对你有帮助,欢迎在下方为我点一颗小红心💖💖💖哦!

同时,你也可以将感悟或者收获在下方留言,或者在评论区留下你的困惑,我会挑选有代表性的问题,推出更多的教程跟大家分享哦!

祝大家国庆节快乐!

欢迎大家阅读我的其他文章:

【函数攻略】系列

一文讲透WPS表格函数二分法(上)

【动态数组灰度测试】系列

动态数组行业案例:使用SEQUENCE/FILTER函数 × 动态数组 搞定三大高频场景

动态数组行业案例:使用SORTBY函数 × 动态数组 制作多功能成绩单

动态数组行业案例:使用UNIQUE函数 × 动态数组 多场景全能应用

动态数组行业案例:使用SEQUENCE函数 × 动态数组 生成动态序号

动态数组行业案例:使用XLOOKUP × 动态数组 实现金牌查找(上)

动态数组行业案例:使用XLOOKUP × 动态数组 实现金牌查找(下)

动态数组行业案例:使用RANDARRAY × 动态数组 解决授课案例问题

动态数组行业案例:使用INDIRECT函数 × 动态数组制作二级下拉菜单

【WPS AI办公】系列

教你一句话找到本次成绩的班级前三名的同学

教你一句话规范身份证号和手机号填写

WPS AI版本体验测评(表格篇)

【菁培班-函高一期PK赛】系列

排序功能平替,等你来设计!

兄弟们,抽奖啦~!

标记正确选项

快来绘制你的专属圣诞树啪

【学习感悟】系列

梦想金山,生生不息——民航小哥的KCT认证备战日记

【我和WPS那些事儿】生生不息,再造未来——一位打工人读者的思考

辽宁省
浏览 1555
收藏
11
分享
11 +1
5
+1
全部评论 5
 
TOBY
用SORT排序或手动排序,也就麻烦一次,关键还需要熟练掌握,灵活运用。
· 陕西省
1
回复
 
TOBY
· 陕西省
回复
 
张俊
张俊

WPS函数专家

感觉似乎明白了,又感觉没有明白,看来还是需要多多学习啊!
· 贵州省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

哪里明白了告诉我,我以后多用这种风格写教程。不明白的地方……你再看两遍
· 辽宁省
2
回复