今天,在队长的带领下学习了弗洛伊德算法。
一、弗洛伊德(Floyd)算法的概念
Floyd算法又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法,与Dijkstra算法类似
二、弗洛伊德(Floyd)算法与迪杰斯特拉算法区别
1.迪杰斯特拉算法通过选定的被访问顶点,求出从出发访问顶点到其他顶点的最短路径; 弗洛伊德算法中每一个顶点都是出发访问点,所以需要将每一个顶点看做被访问顶点,求出从每一个顶点到其他顶点的最短路径。
2.Floyd算法,则修正了dijkstra算法对于边权为负问题的不足,引入了一个外循环,来遍历每个点,从而查询该点是不是在i和j之间,这样的话,无论边权为负值还是正值,都会被考虑进去。对于邻接矩阵A来说,在k-1次迭代后,A(k-1)[i][j]为所有从顶点i到j且不经过k之后的顶点的最小长度,有可能经过k之前的点。所以在遍历过程中需要比较A[i][j]与A[i][k]+A[k][j]的大小,取小值,表示比较经过k点与不经过k点的路径长度大小。
三、弗洛伊德(Floyd)算法的基本思想
设置顶点vi到顶点vk的最短路径已知为Lik,顶点vk到vj的最短路径已知为Lkj,顶点vi到vj的路径为Lij 则vi到vj的最短路径为:min((Lik+Lkj),Lij(直连)),vk的取值为图中所有顶点,可获得vi到vj的最短路径。
四、弗洛伊德(Floyd)算法的步骤
1 .使用二维数组dis储存路径,同时最终状态代表点的最短路径。如果没有直接相连的两点那么默认为一个很大的值(不要溢出)!
2 .从第1个到第n个点依次加入图中。每个点加入进行试探是否有路径长度被更改。
3. 而上述试探具体方法为遍历图中每一个点(i,j双重循环),判断每一个点对距离是否因为加入的点而发生最小距离变化。如果发生改变,那么两点(i,j)距离就更改。
4 .重复上述直到最后插点试探完成。最终dis数组中存放的就是任意两个结点之间的最短距离。
学习应当"披坚执锐,所向披靡",拥有一往直前的精神。
http://www.dxsbao.com/shijian/472197.html
点此复制本页地址
2020年是全面建成小康社会目标实现之年,是脱贫攻坚收官之年。在此过程中,黄河流域成为打赢脱贫攻坚决胜小康的重要地段。如今,结合时代发展,各地人民通过网络宣传、直播展销、结合“农……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
古来黄河流,而今作耕地。相较于经济前卫区域,黄河多是以朴实无华的农耕闻名,更是孕育了华夏文明,乃中华文明之源。我们希望通过线上推广黄河流域特色农产品的方式,尽大家的青年之力……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
习近平总书记在黄河流域生态保护和高质量发展座谈会上作出部署,将黄河流域生态保护和高质量发展上升为重大国家战略。其中,推动黄河流域高质量发展尤为重要。社会实践队的线下调研也在……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
在中国历史上,黄河及沿岸流域给人类文明带来了巨大的影响,中国人俗语称其为“母亲河”。在这片肥沃的土地上,勤劳朴实的人民创造了哪些特色呢?我们将陆续跟随“返家乡”社会实践活动……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
2020年是全面建成小康社会目标实现之年,是脱贫攻坚收官之年。在此过程中,黄河流域成为打赢脱贫攻坚决胜小康的重要地段。如今,结合时代发展,各地人民通过网络宣传、直播展销、结合“农……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
脱贫攻坚是实施乡村振兴战略的优先任务,乡村振兴是在脱贫攻坚基础上的推进,在党和国家的领导下,河南人民逐渐的脱贫致富,尤其是乡村。可惜天不随人愿,前几天的一场大雨,使许多地区……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
经过全党全国各族人民共同努力,在迎来中国共产党成立一百周年的重要时刻,我国脱贫攻坚战取得了全面胜利。但是天有不测风云,7月下旬,中原地区出现历史罕见的强降水,演变成了祸及多地……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>
直播经济对于缓解农副产品难卖情况、促进农民增收和助力产业发展方面,有着显著作用。在乡村振兴大背景下,以阿里、京东、抖音电商为代表的电商平台纷纷在乡村开展新农人培训,通过人才……
水利学院社会实践 华北水利水电大学水利学院查看全文 >>