最短路径不考虑网线和转角的阻碍强度,以求得两结点的最近路径
当网线的阻碍强度为路线的长度,转角的阻碍强度为零,最佳路径就成为最短路径
最佳路径为转角的阻碍强度为最小的路径
最佳路径为网线上的阻碍强度为最小的路径
第1题:
● 迪杰斯特拉(Dijkstra)算法用于求解图上的单源点最短路径。该算法按路径长度递增次序产生最短路径,本质上说,该算法是一种基于(61)策略的算法。 A.分治 B.动态规划 C.贪心 D.回溯
第2题:
B.Floyed算法求解所有顶点对之间的最短路径:
procedure floyed;
begin
for I:=1 to n do
for j:=1 to n do
if a[I,j]>0 then p[I,j]:=I else p[I,j]:=0; {p[I,j]表示I到j的最短路径上j的前驱结点}
for k:=1 to n do {枚举中间结点}
for i:=1 to n do
for j:=1 to n do
if a[i,k]+a[j,k]<a[i,j] then begin
a[i,j]:=a[i,k]+a[k,j];
p[I,j]:=p[k,j];
end;
end;
第3题:
路径分析,其核心是最佳路径和最短路径的求解。比较这两者,可见()。
A、最短路径不考虑网线和转角的阻碍强度,以求得两结点的最近路径
B、当网线的阻碍强度为路线的长度,转角的阻碍强度为零,最佳路径就成为最短路径
C、最佳路径为转角的阻碍强度为最小的路径
D、最佳路径为网线上的阻碍强度为最小的路径
第4题:
第5题:
第6题:
最短路径
A.标号法求解单源点最短路径:
var
a:array[1..maxn,1..maxn] of integer;
b:array[1..maxn] of integer; {b[i]指顶点i到源点的最短路径}
mark:array[1..maxn] of boolean;
procedure bhf;
var
best,best_j:integer;
begin
fillchar(mark,sizeof(mark),false);
mark[1]:=true; b[1]:=0;{1为源点}
repeat
best:=0;
for i:=1 to n do
If mark[i] then {对每一个已计算出最短路径的点}
for j:=1 to n do
if (not mark[j]) and (a[i,j]>0) then
if (best=0) or (b[i]+a[i,j]<best) then begin
best:=b[i]+a[i,j]; best_j:=j;
end;
if best>0 then begin
b[best_j]:=best;mark[best_j]:=true;
end;
until best=0;
end;{bhf}
第7题:
第n最短路径问题
*第二最短路径:每举最短路径上的每条边,每次删除一条,然后求新图的最短路径,取这些路径中最短的一条即为第二最短路径。
*同理,第n最短路径可在求解第n-1最短路径的基础上求解。
第8题:
●迪杰斯特拉(Dijkstra)算法用于求解图上的单源点最短路径。该算法按路径长度递增次序产生最短路径,本质上说,该算法是一种基于(62)策略的算法。
(62)
A.分治
B.动态规划
C.贪心
D.回溯
第9题:
第10题:
在分析商业中心、港口的辐射范围以及设立商店、学校、医院最佳位置的应用中,常采用的GIS技术是()。