当前位置:首页 > 娱乐星闻

0号元素,干货看这篇!程序员面试题之“接雨水”

最近的大雨总是牵动着人们的心。

郑州的大雨淹了好多地方,上海因为台风而建议周一在家办公。作为一名软件工程师,没有技能去冲在第一线抗灾,那么我们就在大后方好好地修炼内功,提升自我吧。

今天我们就来看一道和“雨水”相关的题目。

题目

输入:[1,2,3,1,3]

输出:9

可以想象每一个数字是一个挡板,每个数字可保证大于0。

释义:样例中每一格可接的雨水分别为1,2,3,3,故输出为1+2+3+3 = 9

题目讨论

这道题目本身还是蛮有意思的,属于使用代码去模拟现实世界并解决其问题。这类题目首先要认真分析题目,多看一下例子,总结其规律,然后再解决即可。

我们以每一格为立足点,来看哪些因素会影响其接水量。

对于第一格来说,它的接水量是1,即左边的挡板高度为1,右边的挡板高度为2。因此可以得出结论:接水量取决于左右挡板中较矮的那一个。

对于现实世界,我们应该能比较容易想到另一种情况,即输入是3,1,3时,第一格中的接水量应该为3,而不是取两个挡板的最小值1。因为如果两侧有更高的挡板,那么此时会“淹掉”较矮的挡板,而接水量取决于左右两侧最高的挡板。所以这里需要修改一下上面的结论。修改成什么样呢?这里建议读者可以自己先想一下。

。。。。。。。。。。

。。自行思考地带。。

。。。。。。。。。。

好了,我们来说结论:接水量取决于左边的最大值和右边的最大值中的最小值

接水量结论

好了到这里基本的思路是清晰的,建议读者可以自己动动手实践一下。

我们知道,代码是“练”会的,不是“看”会的。

。。。。。。。。。。

。。自行实践地带。。

。。。。。。。。。。

完整版代码

接雨水

可以注意一下数组方法slice的使用,用以分割数组。

用法:

[1,2,3,4].slice(0,2)返回 [1,2],即从0号下标元素开始(包含),到2号下标结束(不包含)的数组

[1,2,3,4].slice(1)返回 [2,3,4],即从0号下标素开始(包含),到结尾的数组

总结

上述方法的复杂度分析如下:

时间复杂度O(n2):一层循环内,每次取最大值也是O(n)的复杂度,因此相当于两层循环

空间复杂度O(n):使用了一个新数组来存每一格的接水量

读者朋友,你能想到其他更高效或更有趣的解决方法么?

欢迎留言讨论

1.《0号元素,干货看这篇!程序员面试题之“接雨水”》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《0号元素,干货看这篇!程序员面试题之“接雨水”》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/2088376.html

上一篇

电影联名|007之联名UB2020,传奇特工与他新的传奇搭档

下一篇

多项大赛停摆奥运存疑 世界体坛一夕之间“休克”

【0号元素】专题DNF:元素这样玩,dps绝对第一

【0号元素】专题DNF:元素这样玩,dps绝对第一

0号元素相关介绍,作者:贾玲睁开眼睛 第一次做目录版本的帖子,排版、词汇不当的地方请多多原谅。 前言 大家好,这里是一个热爱实战的元素玩家。 帖子主体即标题,有时候逛C站默默的看别人讨论元素相关问题,部分观点不能苟同,...

0号元素,干货看这篇!基本粒子12|β衰变能量丢失之谜,中微子是如何被发现的?

  • 0号元素,干货看这篇!基本粒子12|β衰变能量丢失之谜,中微子是如何被发现的?
  • 0号元素,干货看这篇!基本粒子12|β衰变能量丢失之谜,中微子是如何被发现的?
  • 0号元素,干货看这篇!基本粒子12|β衰变能量丢失之谜,中微子是如何被发现的?
0号元素,干货看这篇!原神:0命雷神优神雷的可行性,以及第四人的想法

0号元素,干货看这篇!原神:0命雷神优神雷的可行性,以及第四人的想法

0号元素相关介绍,作者:NGA-斯德哥尔墨 抽了个0命雷神,看到全在说2命专武雷九万班无敌,那不属于我。 达到当天最大量API KEY 超过次数限制 所以我最初的想法就是带2-3个高能量q的角色,再塞雷神进去加快轮转,...

0号元素,干货看这篇!原神:歪的终末胡桃能用么?安柏辅助再就业,全队增加220精通

0号元素,干货看这篇!原神:歪的终末胡桃能用么?安柏辅助再就业,全队增加220精通

0号元素相关介绍,派蒙:又是一位勇闯武器池的旅行者,还好没歪天空卷~ 冻梨:武器池双UP是哪个鬼才想出来的? (9500.163.com) 每一位旅行者经历过的悲伤故事,这武器池歪了咋整?这期是护摩池,幸运的是他没歪常...

0号元素专题之DNF:元素居然有这些隐藏技巧,你知道多少

0号元素专题之DNF:元素居然有这些隐藏技巧,你知道多少

0号元素相关介绍,作者:四月月月 前言 最近对要素(我主要做的职业)做了一些研究,感觉自己有很多收获,想通过帖子记录下来。不仅是自己,热爱其他要素的选手也想帮忙。 (很早就有写这个帖子的想法,可惜内容太多,一下子不知道...

0号元素专题之原神:歪的终末胡桃能用么?安柏辅助再就业,全队增加220精通

0号元素专题之原神:歪的终末胡桃能用么?安柏辅助再就业,全队增加220精通

0号元素相关介绍,帕蒙:又是一个勇猛的武器坑旅行者,幸好没有歪着天~ 结冰的船:武器钉对UP是哪个鬼想出来的? 所有旅行者经历的悲伤故事,这个武器筒歪了,怎么整理?这次是同伦地。幸运的是,他歪不在武器上常驻。不幸的是,...

【0号元素】稀土是什么?对人类的危害是什么?为什么那么多人反对它

【0号元素】稀土是什么?对人类的危害是什么?为什么那么多人反对它

0号元素相关介绍,一听到稀土,人们都要直觉,这会非常危险,危害健康、致癌等关键词。特别是雷纳斯稀土厂也可以随时上头条,但除了官团外,雷纳斯稀土厂,其实吉塔和霹雳州政府已经开始与私营企业合作,准备在州内勘探稀土后自行开采...

【0号元素】专题关于补钙的冷知识有哪些?奶制品是最高效的食物

【0号元素】专题关于补钙的冷知识有哪些?奶制品是最高效的食物

0号元素相关介绍,《中国居民膳食指南(2016)》建议通过牛奶及乳制品补充钙,成年居民每天摄入300克牛奶或相当数量的乳制品。 奶及奶制品是膳食钙的最好来源,奶及奶制品中不仅钙含量高,而且其中的钙容易被人体所吸收利用—...