
python学习
文章平均质量分 91
听风者628
这个作者很懒,什么都没留下…
展开
-
弗洛伊德(Floyd)算法 python实现
弗洛伊德(Floyd)算法1.算法原理算法使用距离矩阵和路由矩阵。距离矩阵是一个n×nn \times nn×n矩阵,以图GGG的nnn个节点为行和列。记为W=[wij]n×nW=[w_{ij}]_{n\times n}W=[wij]n×n,wijw_{ij}wij表示图GGG中viv_ivi和vjv_jvj两点之间的路径长度。接点则记录最后一个)。路由矩阵是一个n×nn\times nn×n矩阵,以图G的n个节点为行和列。记为R=[rij]n×nR =[r_{ij}]_{n\times原创 2022-05-21 11:16:52 · 8167 阅读 · 9 评论 -
狄克斯特拉(Dijkstra)算法python实现
狄克斯特拉(Dijkstra)算法1.算法原理已知图G=(V,E)G=(V,E)G=(V,E),将其节点集分为两组:置定节点集GpG_pGp和未置定节点集G−GpG-G_pG−Gp。其中GpG_pGp内的所有置定节点,是指定点vsv_svs到这些节点的路径为最短(即已完成最短路径的计算)的节点。而G−GpG-G_pG−Gp内的节点是未置定节点,即vsv_svs到未置定节点距离是暂时的,随着算法的下一步将进行不断调整,使其成为最短径。在调整各未置定节点的最短径时,是将GpG_pGp中的节点原创 2022-05-20 17:39:42 · 1782 阅读 · 0 评论 -
python实现全排列(递归和循环)
1.利用itertools库中的permutations方法import itertools# 利用itertools库中的permutations函数,给定一个排列,输出他的全排列def allPermutation(n): permutation = [] # 首先需要初始化一个1-n的排列 for i in range(n): permutation.append(i+1) # itertools.permutations返回的只是一个对象原创 2022-05-11 17:41:18 · 11866 阅读 · 5 评论