一、前言:分治的来源

根据博主的浅薄知识,我是这样理解的。分治、分治,我们分开来理解!把分治拆成分开和治理。

大家想想一个皇帝(是不是大家都有皇帝梦)想要统治一个国家,一般都不会他一个人管理每一个人,上至宰相、下至贫民。什么事都去找皇帝,他哪有时间快活啊。

所以聪明的皇帝就把自己管理的人分成了几个大模块,由自己信任的人去管理,他来管理这几个大模块的领袖。那岂不是皇帝就有很多快乐玩耍的时间了!

一个事情分开几块来做,有一个科学的术语叫做:解耦!         高内聚,低耦合!高并发  怕不怕~~~~

高并发砸门以后再说!!!   分治的大概概念就是这样:一个事情分成几份做完后再提交结果汇聚一处,完成~

二、分治:分分合合

1.形象的例子

分分合合,我说的不是情侣哈。又扎心了~~~     扎的越深,我越想努力赚钱。

说到钱,举一个钱的例子

存钱罐,大家应该大多数都有吧。没事就把钱往里面塞。塞满后,到了最开心的环节了:数钱!!  一大堆钱,可能你看着就不想算了。全是1分的,当场自闭。苍蝇也是肉,照样吃。

所以为了不要那么腻,我们不可能一口气全部吃完。 所以我们要分小份小份数。然后最后把每小份的钱加起来就是总数了。这样钱也到手了,自己也不会太烦躁(免得当场吞硬币)。

贫穷的我只能画画钱,想想。。

2、主要的思想

当我们求解某些问题时,由于这些问题要处理的数据相当多,或求解过程相当复杂,使得直接求解法在时间上相当长,或者根本无法直接求出。对于这类问题,我们往往先把它分解成几个子问题,找到求出这几个子问题的解法后,再找到合适的方法,把它们组合成求整个问题的解法。如果这些子问题还较大,难以解决,可以再把它们分成几个更小的子问题,以此类推,直至可以直接求出解为止。这就是分治策略的基本思想-----百度百科(信权威,得永生)

3、典型的例子:

二分法简单的一种分治,将一个数组一直分一半,直到找到想要的结果。可见下面这个写的棒棒的博文!

https://blog.csdn.net/qq_40262372/article/details/112572853

进阶级别的就是快排了,快排就是一直取区间,然后将小于选定数A的区间放在A的左边,大于的都放于右边,可见如下博客(阿里巴巴大佬的):

https://blog.csdn.net/nrsc272420199/article/details/82587933?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

三、一切理论都源于实践,多刷题领悟其中精髓才能真正掌握!

四、分治相关的面试高频题目录

1.为运算表达式设计优先级(力扣 241)        博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/112666404

2.不同的二叉搜索数II(力扣95)                    博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/112666646

五、各种类型的高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/112556249

六、如有疑问可加QQ群讨论:725936761     博主免费答疑
欢迎大家一起讨论进步。后续遇到相似的题会继续更新!

群里已有字节、滴滴大佬,可帮忙内推!也欢迎其他大厂的工作人士进群!帮忙内推~

为了鼓励大家坚持,当天打卡人数超过一半,群主发一个红包(群主是学生),激励大家坚持下去!希望以后找工作的时候大家能互捞一下~~~

B站视频讲解如何三个月学习JAVA拿到实习Offer:

https://www.bilibili.com/video/BV1dV411t71K

快速突破面试算法之分治算法篇相关推荐

  1. 2.Python算法之分治算法思想

    1.什么是分治算法? 2.为什么需要分治算法? 3.分治算法基础 4.分治算法的解题一般步骤 5. 用分治算法--求顺序表中的最大值 5. 用分治算法--判断某个元素是否在列表中 6. 用分治算法-- ...

  2. 分治法的关键特征_算法系列之常用算法之一----分治算法

    一.基本概念 在计算机科学中,分治法是一种很重要的算法.分治算法,字面上的解释是"分而治之",分治算法主要是三点: 1.将一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问 ...

  3. 贪心算法、分治算法和动态规划的区别

    贪心算法.分治算法和动态规划的区别 (1)分治法(divide and conquer method) 将原问题划分成若干个规模较小而结构与原问题相似的子问题,递归的解决这些子问题,然后再合其结果,就 ...

  4. 搞定面试算法系列 | 分治算法三步走

    戳蓝字"CSDN云计算"关注我们哦! 作者 | 江子抑 转自 | 编程拯救世界 主要思想 分治算法,即分而治之:把一个复杂问题分成两个或更多的相同或相似子问题,直到最后子问题可以简 ...

  5. 算法- 递归算法 分治算法

    递归算法 (1)递归需要满足的三个条件 一个问题的解可以分解为几个子问题的解 何为子问题?子问题就是数据规模更小的问题. 这个问题与分解之后的子问题,除了数据规模不同,求解思路完全一样 存在递归终止条 ...

  6. 五大常用算法之一——分治算法

    分治算法(Divide and Conquer) 分治算法,简单理解就是把一个大规模的问题分成相同或者相似的子问题,直到最后子问题能很容易的求解,原问题的解通过子问题的解合并得到. 根据这个描述,我们 ...

  7. 十种常用算法之分治算法(java版)

    十大常用算法的完整实现 一.二分查找算法:https://blog.csdn.net/weixin_46635575/article/details/121532149 二.分治算法:https:// ...

  8. 【Java算法】分治算法

    1.什么是分治算法? 分治法(Divide-and-Conquer)是一种很重要的算法. 分治就是"分而治之"的意思,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子 ...

  9. 算法8.分治算法计算a^n

    设a为一给定实数,设计一个分治算法,用于计算an (n为自然数),并分析其计算时间复杂度,要求该算法的计算效率高于蛮力算法. 1. 算法设计思路 1.当n为偶数的时候,an可以分治为(a^2/n)*( ...

  10. 【Java -- 算法】分治算法、动态规划、回溯法、贪心算法

    前言 一句话理解四种算法思想 分治:分而治之,先解决子问题,再将子问题的解合并求出原问题. 贪心:一条路走到黑,选择当下局部最优的路线,没有后悔药. 回溯:一条路走到黑,手握后悔药,可以无数次重来.( ...

最新文章

  1. 面试题--特别是字节对齐
  2. 前端网页、php与mysql数据库字符编码(解决中文等乱码问题
  3. [ 1001] 动态开辟二维数组的说明
  4. 别吵吵,分布式锁也是锁
  5. 使用ultramon调整任务栏高度
  6. log4j 2.x --LogManager
  7. jQuery必知要点(一)
  8. 下滑加载更多js_专治:卫生间免砸砖,房顶漏水,JS堵漏王水不漏,厂家三包产品,免费成熟配方(点开看更多)...
  9. Nginx实用指南V1 (连载之六:cacti监控)
  10. 修复windows脸部识别_如何在Windows 10中改善面部识别
  11. 法语写信_为我们写信:我们最热门的19个主题
  12. python运行不了程序代码_Python源码分析2 - 一个简单的Python程序的执行
  13. ORACLE报错:enviroment variable ORACLE_SID not defined,please define int
  14. 企业微信发送消息php,PHP实现微信模板消息发送给指定用户
  15. 2008下搭建easypanel(康乐)虚拟主机控制面板
  16. iphone上下左右手势判断代码
  17. win7万能声卡驱动_驱动精灵标准版 v9.61.3708.3054下载
  18. k折交叉验证优缺点_都说K折交叉验证最常见,你会做吗?
  19. 【大数据开发必看】项目一 电信客服
  20. HTML5编写船上航行,描写帆船航行的诗句

热门文章

  1. string字符串比较
  2. 禅道备份功能_禅道备份处理
  3. 1.自编码器(keras+mnist)
  4. python2000个5除以84的余数_python中负数除法的求商和取余的问题
  5. 哈工大计算机报深圳还是本部,哈工大本部和哈工大深圳哪个比较好?
  6. python一行输出多个数据_python实现一行输入多个值和一行输出多个值的例子
  7. 机器学习中的numpy的array_机器学习阶段总结(numpy)
  8. 【CF1354C1C2】Polygon Embedding(求解包含正多边形的最小正方形)
  9. 腾讯云linux读取windows数据盘,腾讯云服务器Centos挂载数据盘的方法
  10. ocelot和nginx比较_庐山真面目之四微服务架构Consul和Ocelot简单版本实现