早教吧作业答案频道 -->数学-->
求写最短路径算法.由A地到E地,途经B(B1,B2,B3)C(C1,C2,C3)地,基于矩阵乘法求最短路径.我们把求A→E的最短路分解为四个阶段A→B→C→D→E每一个阶段可以用一个矩阵来表示,这个矩阵称
题目详情
求写最短路径算法.由A地到E地,途经B(B1,B2,B3)C(C1,C2,C3)地,基于矩阵乘法求最短路径.
我们把求A →E 的最短路分解为四个阶段A →B →C→D →E 每一个阶段可以用一个矩阵来表示,这个矩阵称为权矩阵.相邻阶段的路径可以用权矩阵的乘积来表示.但这里的矩阵乘法和普通矩阵乘积运算的区别是:普通矩阵乘积其对应元素是相应元素乘积的代数和,这里把元素相乘改为相加,元素的代数和改为取小运算,如果不同层节点间没有连接,则视它们之间的距离为无穷大.如果是求极大,改为取大运算,此时如果不同层节点间没有连接,则视它们的距离为0.
如下:
由A地到B地的距离可表示为:A[2 5 8]
由B地到C地的权矩阵可表示为
[3,6,5;7,10,8;4,9,6]
因此由A到C的权矩阵为[2,5,8][3,6,5;7,10,8;4,9,6]=[5,8,7]
因此由A到D的权矩阵为[5,8,7)][7,5;3,4;5,2]=[11 ,9]
由A→E的权矩阵为:[11 ,9][4,2)]=[15,11]
因此从家里到学校的最短距离为11百米,最近的路径为从A地出发经过B1地C1地D2地到达E地.
下面我们给出基于“矩阵乘法”求解最短路的算法:
第一阶段:计算出图中从起始点到终点最短路的长度.
step1 划分出该网络图中的层次关系(网络划分为N 层,起点为第一层,终点为第N 层) ;
step2 依次给出从第i 层到第i + 1 层的权矩阵( i= 1 ,2 ,…,N21) ; (若第i 层有m 个顶点;第i + 1 层有n
个顶点,则从第i 层到第i + 1 层的权矩阵为m *n
阶) .
step3 按照我们定义的矩阵乘法计算出最短路的
数值.
第二阶段:寻找最短路所经过的中间点.
(利用第一阶段中step2 的数据) 计算出从第i 层到
终点的最短路,对比与i21 层到终点的最短路,从而确
定出第i 层上最短路所经过的顶点( i = 2 ,…,N21) .
依照上面步骤写一个算法,或者根据题目另外写一个也可以.
我们把求A →E 的最短路分解为四个阶段A →B →C→D →E 每一个阶段可以用一个矩阵来表示,这个矩阵称为权矩阵.相邻阶段的路径可以用权矩阵的乘积来表示.但这里的矩阵乘法和普通矩阵乘积运算的区别是:普通矩阵乘积其对应元素是相应元素乘积的代数和,这里把元素相乘改为相加,元素的代数和改为取小运算,如果不同层节点间没有连接,则视它们之间的距离为无穷大.如果是求极大,改为取大运算,此时如果不同层节点间没有连接,则视它们的距离为0.
如下:
由A地到B地的距离可表示为:A[2 5 8]
由B地到C地的权矩阵可表示为
[3,6,5;7,10,8;4,9,6]
因此由A到C的权矩阵为[2,5,8][3,6,5;7,10,8;4,9,6]=[5,8,7]
因此由A到D的权矩阵为[5,8,7)][7,5;3,4;5,2]=[11 ,9]
由A→E的权矩阵为:[11 ,9][4,2)]=[15,11]
因此从家里到学校的最短距离为11百米,最近的路径为从A地出发经过B1地C1地D2地到达E地.
下面我们给出基于“矩阵乘法”求解最短路的算法:
第一阶段:计算出图中从起始点到终点最短路的长度.
step1 划分出该网络图中的层次关系(网络划分为N 层,起点为第一层,终点为第N 层) ;
step2 依次给出从第i 层到第i + 1 层的权矩阵( i= 1 ,2 ,…,N21) ; (若第i 层有m 个顶点;第i + 1 层有n
个顶点,则从第i 层到第i + 1 层的权矩阵为m *n
阶) .
step3 按照我们定义的矩阵乘法计算出最短路的
数值.
第二阶段:寻找最短路所经过的中间点.
(利用第一阶段中step2 的数据) 计算出从第i 层到
终点的最短路,对比与i21 层到终点的最短路,从而确
定出第i 层上最短路所经过的顶点( i = 2 ,…,N21) .
依照上面步骤写一个算法,或者根据题目另外写一个也可以.
▼优质解答
答案和解析
们把求A →E 的最短路分解为四个阶段A →B →C→D →E 来求解.每一个阶段可以用一个矩阵来表示,这个矩阵称为权矩阵.相邻阶段的路径可以用权矩阵的乘积来表示.但这里的矩阵乘法和普通矩阵乘积运算的区别是:普通矩阵乘积其对应元素是相应元素乘积的代数和,这里把元素相乘改为相加,元素的代数和改为取小运算,如果不同层节点间没有连接,则视它们之间的距离为无穷大. 如果是求极大,改为取大运算,此时如果不同层节点间没有连接,则视它们的距离为0.
如下:
由A地到B地的距离可表示为:A[2 5 8]
由B地到C地的权矩阵可表示为
[3,6,5;7,10,8;4,9,6]
因此由A到C的权矩阵为[2,5,8][3,6,5;7,10,8;4,9,6]=[5,8,7]
因此由A到D的权矩阵为[5,8,7)][7,5;3,4;5,2]=[11 ,9]
由A→E的权矩阵为:[11 ,9][4,2)]=[15,11]
因此从家里到学校的最短距离为11百米,最近的路径为从A地出发经过B1地C1地D2地到达E地.
下面我们给出基于“矩阵乘法”求解最短路的算法:
第一阶段:计算出图中从起始点到终点最短路的长度.
step1 划分出该网络图中的层次关系(网络划分为N 层,起点为第一层,终点为第N 层) ;
step2 依次给出从第i 层到第i + 1 层的权矩阵( i= 1 ,2 , …, N21) ; (若第i 层有m 个顶点;第i + 1 层有n
个顶点, 则从第i 层到第i + 1 层的权矩阵为m *n
阶) .
step3 按照我们定义的矩阵乘法计算出最短路的
数值.
第二阶段:寻找最短路所经过的中间点.
(利用第一阶段中step2 的数据) 计算出从第i 层到
终点的最短路, 对比与i21 层到终点的最短路, 从而确
定出第i 层上最短路所经过的顶点( i = 2 , …, N21) .
如下:
由A地到B地的距离可表示为:A[2 5 8]
由B地到C地的权矩阵可表示为
[3,6,5;7,10,8;4,9,6]
因此由A到C的权矩阵为[2,5,8][3,6,5;7,10,8;4,9,6]=[5,8,7]
因此由A到D的权矩阵为[5,8,7)][7,5;3,4;5,2]=[11 ,9]
由A→E的权矩阵为:[11 ,9][4,2)]=[15,11]
因此从家里到学校的最短距离为11百米,最近的路径为从A地出发经过B1地C1地D2地到达E地.
下面我们给出基于“矩阵乘法”求解最短路的算法:
第一阶段:计算出图中从起始点到终点最短路的长度.
step1 划分出该网络图中的层次关系(网络划分为N 层,起点为第一层,终点为第N 层) ;
step2 依次给出从第i 层到第i + 1 层的权矩阵( i= 1 ,2 , …, N21) ; (若第i 层有m 个顶点;第i + 1 层有n
个顶点, 则从第i 层到第i + 1 层的权矩阵为m *n
阶) .
step3 按照我们定义的矩阵乘法计算出最短路的
数值.
第二阶段:寻找最短路所经过的中间点.
(利用第一阶段中step2 的数据) 计算出从第i 层到
终点的最短路, 对比与i21 层到终点的最短路, 从而确
定出第i 层上最短路所经过的顶点( i = 2 , …, N21) .
看了 求写最短路径算法.由A地到E...的网友还看了以下:
已知:如图,现有a×a、b×b的正方形纸片和a×b的矩形纸片各若干块,试选用这些纸片(每种纸片至少 2020-05-17 …
现有a×a、b×b的正方形纸片(a≠b)和a×b的矩形纸片若干块.现选用一块a×a、三块b×b的正 2020-05-17 …
现有a×a,b×b的正方形纸片和a×b的矩形纸片各若干块,试选用这些纸片(每种纸片至少用一次)拼成 2020-05-17 …
现有a×a、b×b的正方形纸片和a×b的矩形纸片各若干块...现有a×a、b×b的正方形纸片和a× 2020-05-17 …
在a*a,b*b的正方形纸片和a*b的矩形纸片各若干块,试选用这些纸片(每种纸片至少用一次)拼成一 2020-05-17 …
一个矩形运动场被分隔成A、B、A、B、C共5个区,A区是边长为a米的正方形,C区是边长为c米的正方 2020-06-12 …
有没有好心的大神原意帮姑凉写代码利用随机数生成两个4*4矩阵A,B(矩阵A的每个数为1-9的数,矩 2020-07-11 …
线性代数中线性设矩阵A与B行等价,即矩阵A经过初等行变换变成矩阵B,则矩阵B的每个行向量都是A的行 2020-08-02 …
matlab中将矩阵分块后,想得到某一子矩阵的某一行,怎么办?例如,B=mat2cell(s,[50 2020-11-13 …
如图所示,矩形回路abcd位于长直导线附近,两者在同一平面内,长直导线中通有恒定电流I,下列情况中能 2020-12-22 …