
算法
算法
余_yu
这个作者很懒,什么都没留下…
展开
-
算法导论阅读笔记——第16章 贪心算法
第16章 贪心算法定义及原理活动选择问题问题描述及分析赫夫曼编码 定义及原理 和动态规划算法相比,贪心算法是一种更简单、更高效的算法。它在每一步都住处当时看起来最佳的选择,也就是说,它总是做出局部最优的选择,寄希望于这样的选择能导出全局最优解。 贪心算法并不能保证得到最优解,但是对于一些问题,确实可以得到最优解。 活动选择问题 问题描述及分析 假定有一个n个活动的集合S={a1,a2,……,an}。这些活动都使用同一个资源,而这个资源在同一时间只能被一个活动使用(比如教室)。每一个活动ai有一个开始时间si原创 2020-09-06 17:25:32 · 424 阅读 · 0 评论 -
算法导论阅读笔记——第15章 动态规划
第15章 动态规划定义及原理钢条切割问题最长公共子序列最优二叉搜索树 定义及原理 动态规划和分治法类似,都是通过组合子问题的解来求解原问题。动态规划应用于子问题重叠的情况,及不同的子问题具有公共的子子问题。在这种情况下,分治法会做许多不必要的工作,重复计算求解那些公共子子问题。而动态规划只求解一次,避免了不必要的工作。 我们通常按照下面四个步骤来设置动态规划算法: 刻画一个最优解的结构特征 递归地定义最优解的值 计算最优解的值,通常采用自底向上的方法 利用计算出的信息构造一个最优解 前三步是动态规划算法原创 2020-07-11 22:21:31 · 562 阅读 · 0 评论 -
算法导论阅读笔记——第一部分 基础知识
第一章 基础知识算法定义思考题 算法定义 算法就是把输入转化为输出的计算过程。 如果对所有输入,算法都能输出正确的结果,那么这个算法就是正确的。反之,输出不正确的结果,或者算法本身导致死循环,这个算法就是不正确的。 只要其错误率可控,不正确的算法也可能是有用的(如大素数算法)。 思考题 1-1 运行时间的比较。假设求解问题的算法需要f(n)毫秒,对下表中的每个函数f(n)和时间t,确定可以在时间t内求解的问题的最大规模n。 1秒钟 1分钟 1小时 1天 1月 1年 1世纪 lgn 1秒钟原创 2020-06-20 16:41:00 · 718 阅读 · 0 评论