从零学习经典算法系列 分治与递归 1 递归表达式与解法初步
发布时间
阅读量:
阅读量
对于像我这样在过去没有系统地学习过算法或者只是皮毛了解而未真正认识其重要性的人来说,在这个领域深耕多年后终于下定决心要认真对待每一个经典算法的学习工作,并希望通过这种方式深入思考并督促自己坚持下去。同时我也希望在这个过程中能够遇到许多跟我一样出身于非计算机专业领域的同学一起交流探讨算法的魅力与精髓。
算法是计算机系统的核心要素之一,在本质上也是一种核心思维方式,在某种程度上决定了我们思考问题的能力和质量。当前环境下变化极为迅速,在信息技术领域涌现出了大量令人眼花缭乱的技术创新、快速培训课程以及标准化程度较高的编程接口等现象,在这种情况下许多希望快速掌握编程技能的学习者往往只关注编写代码本身而不注重培养自己的系统性思维能力以及经过实践验证的有效解决方案。要真正掌握算法的本质特性就必须从抽象层面深入研究其内在规律性特点,在这种基础之上才能确保技术发展不会因表面形式的变化而被淘汰失效;同时也能让自己在宝贵的学习时间投入中获得实际的价值提升
于是,让我开始上路吧。
1、分而治之策略
例如足球世界杯
分治策略可概括为以下步骤:
(1)分解(Divide):将复杂的问题拆解为多个更简单的子任务;这些子任务本质上与原问题具有相同的性质但规模较小。
(2)解决(Conquer):通过递归来处理各个子问题。(作为分治策略的重要手段之一,在单次运用分治策略可能效果有限的情况下,在
全部评论 (0)
还没有任何评论哟~
