![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
最优算法
飞机飞机你在哪
这个作者很懒,什么都没留下…
展开
-
java实现Dijkstra迪杰斯特拉算法
思路:(1)迪杰斯特拉处理的是二阶矩阵,代表各个端点之间的权。(2)需要一个标识数据,用来表示哪个点已经确定了最短路径。(3)还需要一个队列,用来存储距离当前端点最近的几个端点。不过这里没有存储进队列,只在比较的过程中把最小的索引值取出来。(4)距离每个端点的最短距离的判定是起点到这个点的距离和起点通过某个点到这个点的距离之间较小值。程序如下,可直接运行。public class Ma...原创 2020-03-13 17:05:17 · 181 阅读 · 0 评论 -
算法的空间复杂度和时间复杂度问题
问题是这样开始的在作题的时候遇到了分析时间复杂度和空间复杂度的问题,也因此毫无保留地暴露了自己的弱智。这个链接解释的很好理解(精华在这里,必看此链接!)https://blog.csdn.net/zolalad/article/details/11848739简单的总结一下,重点还是要看for循环由多少层 嵌套,如果外面是while循环,且while结束的时间跟n有关,或者说可...原创 2019-09-04 23:24:28 · 196 阅读 · 0 评论 -
遗传算法解决旅行商(TSP)问题
遗传算法解决旅行商问题作为NP难的经典问题,旅行商问题有多种算法可以解决。我学习的过程中,首先看到了模拟退火算法解决旅行商问题的过程,模拟退火算法可以保证100%的找到全局最小值。在我研究遗传算法的过程中,我突然想试一下怎样用遗传算法中选择、交叉的变异的思路来解决这个问题。以52城的题目为例使用遗传算法进行解题首先考虑如何初始化种群,我选择用randperm(52)直接生成一个1到5...原创 2019-08-31 13:59:43 · 1117 阅读 · 0 评论 -
模拟退火算法是怎么跳出局部最小值
模拟退火算法确保求出的是全局最优值,不会陷入局部最小值模拟退火算法新解的产生相当于一个找“邻居”的过程,目标函数很容易陷入局部最小值,但是通过以一定概率接受比当前解更差的新解使得目标函数的取值可以跳出局部最小值,最终到达全局最优。以下链接讲解的非常清楚。https://blog.csdn.net/sinat_33425327/article/details/82468869...原创 2019-08-30 09:42:00 · 2421 阅读 · 0 评论