算法
文章平均质量分 82
萘和
物有本末,事有终始,知所先后,则近道矣
展开
-
递归算法的时间复杂度——公式法、递归树法
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-06-25 09:03:43 · 3433 阅读 · 0 评论 -
分治策略——棋盘覆盖问题
棋盘覆盖问题一.问题描述一个2k*2k的棋盘,指定一点为特殊方格(无需覆盖),然后用(4k-1)/3个L型骨牌无重叠地覆盖其余所有方格。下图为一个示例:二.算法思想——分治策略将一个规模为n问题分为k个规模较小的子问题,这些子问题互相独立且与原问题相同,递归或迭代地解这些子问题,再将子问题合并得到原问题的解。1.分割如若将2k*2k的棋盘分割成4个2k-12k-1的棋盘,问题规模就可以缩小一半。递归地使用这种分割,直到子问题的规模变成22的棋盘,可以直接覆盖。上图为23*23的棋盘,黑色方原创 2020-06-26 13:22:23 · 2534 阅读 · 0 评论 -
动态规划——矩阵连乘问题
一. 问题描述给定n个矩阵{A1,A2,A3,……An},其中Ai和Ai+1是可乘的,要求确定矩阵连乘的计算次序,使得矩阵连乘需要的数乘次数最少。二.解法先看两个矩阵相乘:A是p∗qp*qp∗q的矩阵,B是q∗rq*rq∗r的矩阵,则乘积C=AB是p∗rp*rp∗r的矩阵,C中每一个元素是有p对数的乘积求和的得到的,即两个矩阵相乘需要的数乘次数为p∗q∗rp*q*rp∗q∗r。为了方便起见,给出如下定义:1)Ai=pi∗qiA_i=p_i*q_iAi=pi∗qi,即AiA_iAi是一个pi原创 2020-06-28 11:16:20 · 1273 阅读 · 0 评论 -
递归的概念;分治策略、动态规划和贪心算法的概念
一.递归算法1.概念若一个算法直接的或间接的调用自己本身,则称这个算法是递归算法。递归本质上也是一种循环的算法结构,它把较复杂的计算逐次归结为较简单的情形的计算,直到归结到最简单情形的计算,并最终得到计算结果为止。利用递归算法解决的问题通常具有如下3个特性:1)求解规模为n的问题可以转化为一个或多个结构相同、规模较小的问题,然后从这些小问题的解能方便地构造出大问题的解。2)递归调用的次数必须是有限的。3)必须有结束递归的条件(边界条件)来终止递归。2.分析过程①明确你这个函数想要干什么。先不管原创 2021-07-13 13:07:54 · 1100 阅读 · 0 评论