ITPub博客

首页 > 数据库 > 数据库开发技术 > 深入理解分摊思想

深入理解分摊思想

原创 数据库开发技术 作者:极客重生 时间:2021-08-14 11:00:00 0 删除 编辑

hi,大家好,今天分享一个特别重要的思想,这个思想是解决困难问题的利器,那就是分摊思想,今天深入介绍一下这个思想,希望大家可以从中学到一些东西。

什么是分摊思想

狭义的分摊是指算法复杂度分析里面,对单次复杂度高的操作,其操作代价可以通过拉长周期,在长时间看来,其复杂度可以分摊到每一次低复杂度操作,


简单地说就是,偶尔的高复杂度操作,并不能决定整个算法真实复杂度,随着算法长时间运行,高复杂度的操作可以平摊到每次的低复杂度操作,这样算法评估的复杂度就变成低了,也更接近真实的复杂度。


广义的分摊思想,是指要完成一个大目标,需要进行目标分解,分解成日常操作,是不是和上面狭义的定义有点类似,因为一般大目标是不可能一次完成的,需要日积月累,需要每天完成分解好的任务,这样最后才可能完成大目标(高复杂度操作)。


分摊思想就类似批量处理思想的对立面,批量处理核心原理是:借助计算机局部性原理,把多个单次操作,聚集起来形成一个大操作,一次处理完成,可以让处理更加有效率。


而分摊思想利用了积少成多特性,一般很多目标(一般指有一定难度的目标)都不是一次可以完成,都需要分解成细小任务,分散到每天生活中去完成。我们可以看一看此思想在各个领域中的应用。

算法中的分摊思想

上面章节已经说过了,狭义的分摊思想就是从算法复杂度分析中来的,偶尔的高复杂度操作,并不能决定整个算法真实复杂度,随着算法长时间运行,高复杂度的操作可以平摊到每次的低复杂度操作,这样算法评估的复杂度就变低了,也更接近真实的复杂度。


动态扩容复杂度分析


就是很多时候,不要因为方案里面包含一次高复杂度操作,就否决该方案,应该采用分摊思想进行复杂度分析,很可能长时间来看,分摊后的复杂度是可以接受的,但程序偶尔出现高复杂度读操作可能会导致性能抖动,比如java的GC过程,可能会导致程序假死,如果应用不允许存在这种情况,就得更换方案。


这里就类似比赛打分,要去掉一个最高分和最低分,这样评估才更加公平准确。

工作上的分摊思想


在工作中,公司都是把战略目标从上到下进行分解,把公司目标分解为部门目标,部门再分解为团队目标,最后团队再分解成具体可执行的任务,一般大厂都是这样倒推工作的,先定一个合理的目标,然后要完成这个目标(战略目标),各部门必须要做哪些工作(完美计划),再推动各部门严格执行(执行力),最后验收成果(复盘),就个就是当前大厂比较流行的目标管理方法OKR。


这里面就包含了分摊的思想,怎么去完成一个大的战略目标,比如市场占有率,APP在线人数,营收增长等等,这些目标都需要分摊到每一天的996工作中去实现,每天严格执行起来,才可以完成目标。


对于个人而言,首先要清楚团队的目标,其次要学会把这些目标分摊到每一天工作中,如果当天工作没有完成,很可能会影响到整个任务进度,甚至会导致部门目标不能完成,可能会产生蝴蝶效应,所以如果作为leader,要随时发现这些风险点,并及时调整。

生活中的分摊思想

其实在生活中,很多人都喜欢只立flag,不管行动,没有具体落地的计划,并没有去分析如果要完成这些flag,需要完成哪些任务,没有把任务分摊到每一天生活中去,大多数时候,很多人都只记得flag,而忘记每一天要完成的任务,形成拖延症。



所以在生活中,我们需要明确可量化目标,比如减肥20斤,然后制定详细计划,并分解成小任务到每一天生活中,然后每天严格完成这些任务,相信这个目标很快都会达到(很多时候,只要严格执行,目标都会提前完成)。


我们可以看到,每一个成功人士的背后,都离不开汗水和坚持,唯有自律的人,才能每天迎接朝阳和晚霞。


我们可以举个例子:《邪不压正》中,人人都在惊叹彭于晏的身材,殊不知,他私底下为此付出了多少努力。


我们只是看到了他光鲜亮丽的一面,以前他也迷茫过,绝望过,他问过自己,为什么别人能够接那么多戏?有那么多粉?赚那么多钱?答案就是自己还不够优秀!

怎么让自己变得优秀?只有一个答案:拼命,自律。他没有才华,所以只能去拼命地努力,才能成为更好的自己。


在拍《翻滚吧,阿信》这部电影时,彭于晏挑战了电影中所有的高难度体操动作,这些都是他苦练了8个月才拿下了,每天严格控制饮食(分摊思想),体脂保持在10%以下,最后他学会了所有体操项目,并且把身材练得特别好,从而一炮而红!

经济学中的分摊思想


相信大家都想挣钱,很多人都给自己设置了目标,比如30岁之前一定要年薪100W,或者40岁之前实现财富自由等等,但是生活告诉我们,这些并不是到了30岁会自然实现的,需要一个非常完美计划和强大的执行力,需要从30岁的时间点,把目标100W倒推到今天,制定每天干什么,每个月干什么,每个一年达成什么目标,直到30岁之前计划,这是一个逐步实现的过程。


举一个不恰当的例子,一个从艺20年终于成功的名角儿,拍广告30分钟挣100万。如果单从这回报看,是不公平的暴利。但是事实上,商家购买的是角儿的影响力,这影响力是之前20年不停积累的结果。也就是说这100万从他20年前就开始挣了,这30分钟只是最后的兑现。

最后总结

最后,从上面例子中,我们深刻体会到了,分摊思想是非常重要的,要想完成一个巨大的目标,第一眼看上去确实很困难,其实只要认真去分解目标,把理想照进现实,踏踏实实完成好每一天的任务,坚持下去,说不一定哪一天就实现了自己的小目标。


希望大家不要畏惧设立目标,也不要轻视目标,掌握分摊思想精髓,在生活中,工作中的实践起来,把生活朝着自己预期方向发展。

参考和扩展

https://www.zhihu.com/question/19920338

https://www.cnblogs.com/gaochaochao/p/9216079.html



- END -



看完一键三连在看,转发,点赞

是对文章最大的赞赏,极客重生感谢你


推荐阅读


不加班的秘密

后端技术趋势指南|如何选择自己的技术方向

深入理解编程艺术之策略与机制相分离

原文作者:极客重生;如有侵权,请联系管理员删除。

下一篇: 不加班的秘密
请登录后发表评论 登录
全部评论

注册时间:2021-01-23

  • 博文量
    165
  • 访问量
    67590