单选题
利用动态规划法求解每对节点之间的最短路径问题时,设有向图G=<V,E>共有n个节点,节点编号1~n,设C是G的成本邻接矩阵,用D
k
(i,j)表示从i到j并且不经过编号比k还大的节点的最短路径的长度(D
n
(i,j)即为图G中节点i到j的最短路径长度),则求解该问题的递推关系式为
(28)
。
A、
D
k
(i,j)=D
k
-1(i,j)+C(i,j)
B、
D
k
(i,j)=minD
k
-1(i,j),Dk-1(i,j)+C(i,j)
C、
D
k
(i,j)=Dk-1(i,k)+D
k
-1(k,j)
D、
D
k
(i,j)=minD
k
-1(i,j),D
k
-1(i,k)+D
k
-1(k,j)
【正确答案】
D
【答案解析】
[分析] 从“D
k
(i,j)表示从i到j并且不经过编号比k还大的节点的最短路径的长度”中,我们得到一个提示,在求i,j之间最短路径的时候,会考虑它经过哪些节点能缩短原来的路径。在 D
k
(i,j)=min{D
k
-1(i,j),D
k
-1(i,k)+D
k
-1(k,j)}中,D
k
(i,j)表示i到j不经过k的路径长度,而 Dk-1(I,k)+Dk-1(k,j)表示i到j经过k的路径长度,且min()函数用于找最小值,所以此式正确。
提交答案
关闭