哎呀,问题太复杂,我真太难啦!

【这是一猿小讲的第  71  篇原创分享】

首先带着大家体验一下 生活 。斗地主估计大家都玩过,每次开玩之前,都会统计一副牌的张数到底够不够,最快的步骤莫过于:分几份给大家;然后大家一起数;最后大家把数都报出来,有一个人来累加一下,算算总张数;接着就可以愉快的玩耍啦… …

哎呀,问题太复杂,我真太难啦!

然后带着大家感受一下 经验 掰玉米估计多数都干过,每当玉米成熟的季节,邻居老奶奶是最头疼啦,因为老奶奶膝下没有人,靠老奶奶一个人掰玉米确实有点难,每当这个时候,亲戚邻居都会帮老奶奶掰玉米,一会儿的功夫就帮老奶奶搞定啦… … 

人多力量就大,于是在村里就自发形成了:专业帮掰玉米团、专业帮种蒜团、专业帮收棉花团… …

哎呀,问题太复杂,我真太难啦!

铺垫了这么多,你肯定还不知道咱们今天要聊啥?其实要聊的是藏在这两个的故事背后,你们猜是什么?好了别卖关子啦,其实想分享一种技术思想 —— 分而治之。

哎呀,问题太复杂,我真太难啦!

所谓“分而治之” 就是把一个复杂的算法问题,按一定的“分解”方法,分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解, 这种朴素的思想来源于人们 生活 与工作的 经验 ,也完全适合于技术领域。诸如软件的体系结构设计、模块化设计都是分而治之的具体表现 —— 摘自百度百科。

简单去理解,要解决一个大的复杂问题,采用分而治之的方法,可以分解为以下几步:

1)把复杂的大问题分解成两个或多个更小的问题( 掰玉米这件小事,按照人头划分 );

2)分别求的每个小问题的解答( 每人负责掰一垅玉米 );

3)把各小问题的解答组合起来,即可得到原问题的解答( 有专人负责玉米装车 )。

哪些地方用到了它?本次就不展开去说,感兴趣的可以追追往期的 MapReduce 相关文章

最后,架构思想来源于人们生活!架构思想源自于人们的工作经验!当你有问题真想不明白的时候,不妨贴近生活尝试感受一下,说不定就顿悟啦!

好了,2 分钟让你不烧脑的分享,到这就结束啦, 希望你们能够喜欢,如果感觉有点意思,无需赞赏,芸芸众生,相遇相识便是缘,不妨动动手指 转发分享一下吧。

哎呀,问题太复杂,我真太难啦!

原文 

http://mp.weixin.qq.com/s?__biz=MzU2MDg5NzYzNA==&mid=2247484600&idx=1&sn=7f1cad15f8808be36daff477be3f276a

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » 哎呀,问题太复杂,我真太难啦!

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址