题目内容
(请给出正确答案)
[主观题]
考查某些边的权重不是正数的带权网络。试证明:a)对此类网络仍可以定义最小支撑树——此时,Prim算法是否依然可行?b)若不含负权重环路,则仍可以定义最短路径树——此时,Dijkstra算法是否依然可行?
查看答案
如果结果不匹配,请 联系老师 获取答案
合成数(composite number)法,是消除图算法岐义性的一种通用方法。首先,在顶点的标识之间约定某一次序。比如,顶点标识为整数或字符时,可直接以整数或字符为序;对于字符串等标识,不妨按字典序排列。于是,若边(v,u)权重为w,则对应的合成数取作向量:(w,min(v,u),max(v,u))。如此,任何两条边总能明确地依照字典序比较出大小。
试在6.11.5节Prim算法和6.12.2节Dijkstra算法中引入这一方法,以消除其中的歧义性。
序列中元素A[i]和A[j]若满足i<j且A[i]>A[j],则称之为一个逆序对(inversion)。考查如教材80页代码3.19所示的插入排序算法List::insertionSort(),试证明:
a)若所有逆序对的间距均不超过k,则运行时间为o(kn);
b)特别地,当k为常数时,插入排序可在线性时间内完成;
c)若共有I个逆序对,则关键码比较的次数不超过o(I);
d)若共有I个逆序对,则运行时间为o(n+I)。
对于三角带(V带),张紧轮应装在(),使带只受单方向的弯曲。
A.松边外侧
B.松边内侧
C.紧边外侧
D.紧边内侧