- 博客(7)
- 收藏
- 关注
原创 第七章 分支界限算法
文章目录一、分支界限算法二、分支界限算法策略三、界限函数四、迷宫问题一、分支界限算法分支限界法类似于回溯法,是一种在问题的解空间树上搜索问题解的算法。分支限界法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。二、分支界限算法策略分支限界法常以广度优先的方式搜索问题的解空间树。在分支限界法中,每一个活结点只有...
2019-10-31 19:36:58
482
原创 第6章 回溯算法
文章目录一、回溯算法二、0-1背包问题三、旅行商问题四、(流水)批作业处理问题一、回溯算法以深度优先的方式系统地搜索问题的解的方法称为回溯法。可以系统地搜索一个问题的所有解或任意解。有许多问题,当需要找出它的解集或者要求回答什么解是满足某些约束条件的最佳解时,往往要使用回溯法。回溯法的基本做法是搜索,或是一种组织得井井有条的,能避免不必要搜索的穷举式搜索法。二、0-1背包问题给定一个...
2019-10-31 12:45:00
264
原创 第五章 贪心算法
文章目录一、贪心算法介绍二、贪心算法与动态规划的比较三、删数问题四、汽车加油问题五、过河问题一、贪心算法介绍贪心算法总是作出在当前看来最好的选择。贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。当然,希望贪心算法得到的最终结果也是整体最优的。虽然贪心算法不能对所有问题都得到整体最优解,但对许多问题它能产生整体最优解。如单源最短路经问题,最小生成树问题等。在一些情...
2019-10-30 22:37:56
250
原创 第四章 动态规划
文章目录一、 什么是动态规划二、动态规划的基本思想三、动态规划的问题特征四、设计动态规划的步骤五、最长公共子序列六、0-1背包问题(不能分割)一、 什么是动态规划动态规划(Dynamic Programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程(multistep...
2019-10-29 10:22:01
243
原创 第三章 递归与分治策略
文章目录递归的概念分治法的基本思想众数与重数递归的概念直接或间接地调用自身的算法称为递归算法。用函数自身给出定义的函数称为递归函数。在计算机算法设计与分析中,使用递归技术往往使函数的定义和算法的描述简洁且易于理解。递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。注意:在使用递增归策略时,必须有一个明确的递归结束条件,称为递归出口,...
2019-10-28 20:51:44
223
原创 第二章 STL简介
文章目录了解STLSTL组成1)容器(Container)2)迭代器(Iterator)3)算法(Algorithm)4)函数对象Function object)5)适配器(Adaptor)6)空间配制器(allocator)了解STLSTL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。STL是所有C++编译器和所有操作系统平...
2019-10-08 21:48:45
92
原创 第一章 递推算法
第一章 递推算法递推法是一种重要的数学方法,在数学的各个领域中都有广泛的运用,也是计算机用于数值计算的一个重要算。特点:在已知条件和所求问题之间总存在着某种相互联系的关系,如果可以找到前后过程之间的数量关系(即递推式),那么,从问题出发逐步推到已知条件,此种方法叫逆推。无论顺推还是逆推,其关键是要找到递推式。1 .求菲波那契数列的前 n 项Fibonacci 数列:0,1,1,2,3,...
2019-10-08 11:18:59
298
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人