10.1 From Basic Concepts to a Generic AlgorithmWe extend the cost func dịch - 10.1 From Basic Concepts to a Generic AlgorithmWe extend the cost func Việt làm thế nào để nói

10.1 From Basic Concepts to a Gener

10.1 From Basic Concepts to a Generic Algorithm
We extend the cost function to paths in the natural way. The cost of a path is the
sum of the costs of its constituent edges, i.e., if p = e1 , e2 , . . . , ek then c(p) =
1≤i≤k c(ei ). The empty path has cost zero.
For a pair s and v of nodes, we are interested in a shortest path from s to v. We
avoid the use of the definite article “the”, since there may be more than one shortest
path. Does a shortest path always exist? Observe that the number of paths from s to
v may be infinite. For example, if r = pCq is a path from s to v containing a cycle
C, then we may go around the cycle an arbitrary number of times and still have a
path from s to v, see Figure 10.2. More precisely, p is a path leading from s to u,
C is a path leading from u to u and q is a path from u to v. Consider the path r (i)
which first uses p to go from s to u, then goes around the cycle i times, and finally
follows q from u to v. The cost of r (i) is c(p) + i • c(C) + c(q). If C is a so-called
negative cycle, i.e., c(C) < 0 then c(r (i+1) ) < c(r (i) ). In this situation there is no
shortest path from s to v. Assume otherwise, say P is a shortest path from s to v.
Then c(r (i) ) < c(P ) for i large enough1 and so P is not a shortest path from s to v.
We will next show that shortest paths exist if there are no negative cycles.
Lemma 25. If G contains no negative cycle and v is reachable from s then a shortest
path from s to v exists. Moreover, the shortest path is simple.
Proof. Assume otherwise. Let be the minimal cost of a simple path from s to v and
assume that there is a non-simple path r from s to v of cost less than . Since r is
non-simple we can, as in Figure 10.2, write r as pCq, where C is a cycle and pq is
a simple path. Then ≤ c(pq) and hence c(pq) + c(C) = c(r) < ≤ c(pq). So
c(C) < 0 and we have shown the existence of a negative cycle.
Exercise 170. Strengthen the lemma above and show: if v is reachable from s then a
shortest path from s to v exists iff there is no negative cycle that is reachable from s
and from which one can reach v.
For two nodes s and v, we define the shortest path distance µ(s, v) from s to v as

+∞if there is no path from s to v

µ(s, v) := −∞if there is no shortest path from s to v


c(a shortest path from s to v) otherwise.
Observe that if v is reachable from s, but there is no shortest path from s to v,
then there are paths of arbitrarily large negative cost. Thus it makes sense to define
µ(s, v) = −∞ in this case. Shortest paths have further nice properties which we
state as exercises:
Exercise 171 (Subpaths of Shortest Paths.). Show that subpaths of shortest paths
are themselves shortest paths, i.e., if a path of the form pqr is a shortest path than q
is also a shortest path.
Exercise 172 (Shortest Path Trees.). Assume that all nodes are reachable from s
and that there are no negative cycles. Show that there is an n-node tree T rooted as
s such that all tree paths are shortest paths. Hint: assume first that shortest paths are
unique and consider the subgraph T consisting of all shortest paths starting at s. Use
the preceding exercise to prove that T is a tree. Extend to the case when shortest
paths are not unique.
Our strategy for finding shortest paths from a source node s is a generalization of
the BFS algorithm in Figure 9.3. We maintain two NodeArrays d and parent. Here
d[v] contains our current knowledge about the distance from s to v and parent[v]
stores the predecessor of v on the currently shortest path to v. We usually refer to
d[v] as the tentative distance of v. Initially, d[s] = 0 and parent[s] = s. All other
nodes have infinite distance and no parent.
The natural way to improve distance values is to propagate distance information
across edges. If there is a path from s to u of cost d[u] and e = (u, v) is an edge out
of u, then there is a path from s to v of cost d[u] + c(e). If this cost is smaller than
the best previously known distance d[v], we update d and parent accordingly. This
process is called edge relaxation.
Procedure relax(e = (u, v) : Edge)
if d[u] + c(e) < d[v] then d[v] := d[u] + c(e);
parent[v] := u
Lemma 26. After any sequence of edge relaxations: If d[v] < ∞, then there is a
path of length d[v] from s to v.
Proof. We use induction on the number of edge relaxations. The claim is certainly
true before the first relaxation. The empty path is a path of length zero from s to v and
all other nodes have infinite distance. Consider next a relaxation of edge e = (u, v).
By induction hypothesis, there is a path p of length d[u] from s to u and a path q of
length d[v] from s to v. If d[u] + c(e) ≥ d[v], there is nothing to show. Otherwise,
pe is a path of length d[u] + c(e) from s to v.
The common strategy of the algorithms in this chapter is to relax edges until
either all shortest paths are found or a negative cycle is discovered. For example, the
fat edges in Figure 10.1 give us the parent information obtained after a sufficient
number of edge relaxations: nodes f , g, i, and h are reachable from s using these
edges and have reached their respective µ(s, •) values 2, −3, −1, and −3. Node b,
j, and d form a negative cost cycle so that their shortest path cost is −∞. Node a is
attached to this cycle and thus µ(s, a) = −∞.
What is a good sequence of edge relaxations? Let p = e1 , . . . , ek be a path
from s to v. If we relax the edges in the order e1 to ek , we have d[v] ≤ c(p) after
the sequence of relaxations. If p is a shortest path from s to v, then d[v] cannot drop
below c(p) by the preceding Lemma and hence d[v] = c(p) after the sequence of
relaxations.
Lemma 27 (Correctness Criterion). After performing a sequence R of edge relax-
ations, we have d[v] = µ(s, v) if for some shortest path p = e1 , e2 , . . . , ek from s
to v, p is a subsequence of R, i.e., there are indices t1 < t2 < • • • < tk such that
R[t1 ] = e1 , R[t2 ] = e2 , . . . , R[tk ] = ek . Moreover, the parent information defines a
path of length µ(s, v) from s to v.
Proof. Here is a schematic view of R and p: the first row indicates time. At time t 1 ,
the edge e1 is relaxed, at time t2 , the edge e2 is relaxed, and so on.
1, 2, . . . , t1 , . . . , t2 , . . . . . . , tk , . . .
R :=. . . , e 1 , . . . , e2 , . . . . . . , e k , . . .
p:=e1 ,e2 , . . . , e k
We have µ(s, v) = 1≤j≤k c(ej ). For i ∈ 1..k let vi be the target node of ei and
define t0 = 0 and v0 = s. Then d[vi ] ≤1≤j≤i c(ej ) after time ti as a simple
induction shows. This is clear for i = 0 since d[s] is initialized to zero and d-values
are only decreased. After the relaxation of ei = R[ti ] for i > 0, we have d[vi ] ≤
d[vi−1 ] + c(ei ) ≤ 1≤j≤i c(ej ). Thus after time tk , we have d[v] ≤ µ(s, v). Since
d[v] cannot go below µ(s, v) by Lemma 26, we have d[v] = µ(s, v) after time tk and
hence after performing all relaxations in R.
Let us next prove that the parent information traces out shortest paths. We do so
under the additional assumption that shortest paths are unique and leave the general
case to the reader. After the relaxations in R, we have d[vi ] = µ(s, vi ) for 1 ≤ i ≤ k.
When d[vi ] was set to µ(s, vi ) by an operation relax (u, vi ), the existence of a path
of length µ(s, vi ) from s to vi was established. Since, by assumption, the shortest
path from s to vi is unique, we must have u = vi−1 and hence parent[vi ] = vi−1 .
Exercise 173. Redo the second paragraph in the proof above, but without the as-
sumption that shortest paths are unique.
Exercise 174. Let ES be the edges of G in some arbitrary order and let ES (n−1) be
n − 1 copies of ES . Show µ(s, v) = d[v] for all nodes v with µ(s, v) = −∞ after
performing the relaxations ES (n−1) .
In the next sections, we will exhibit more efficient sequences of relaxations for
acyclic graphs and graphs with non-negative edge weights. We come back to general
graphs is Section 10.5.

0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
10.1 từ khái niệm cơ bản để một thuật toán chung
chúng tôi mở rộng các chức năng chi phí để đường dẫn cách tự nhiên. Chi phí của một con đường là các
tổng của các chi phí của thành phần đa cung, tức là, nếu p = e1, e2,..., ek sau đó c(p) =
1≤i≤k c (ei). Đường dẫn có sản phẩm nào có chi phí zero.
cho một cặp s và v của nút, chúng tôi đang quan tâm đến một đường đi ngắn nhất từ s đến v. Chúng tôi
tránh sử dụng definite điều "các", kể từ khi có thể có nhiều hơn một ngắn nhất
đường dẫn. Có một con đường ngắn nhất luôn luôn tồn tại? Quan sát mà số lượng các đường đi từ s để
v có thể là infinite. Ví dụ, nếu r = pCq là một đường đi từ s đến v có chứa một chu kỳ
C, sau đó chúng tôi có thể đi xung quanh chu kỳ một số tùy ý của thời gian và vẫn còn có một
đường đi từ s đến v, xem hình 10.2. Chính xác hơn, p là một con đường dẫn từ s tới bạn,
C là hàng đầu con đường từ bạn để bạn và q là một con đường từ bạn v. xem xét r đường dẫn (i)
chính mà sử dụng p để đi từ s cho bạn, sau đó đi xung quanh thành phố chu kỳ tôi lần, và finally
sau q từ bạn để v. Chi phí r (i) là c(p) tôi • c(C) c(q). Nếu C là một để-gọi là
phủ định chu kỳ, tức là, c(C) < 0 thì c (r (i 1)) < c (r (i)). Trong tình huống này có là không có
các đường đi ngắn nhất từ s để c. Assume nếu không, nói P là một đường đi ngắn nhất từ s để c.
sau đó c (r (i)) < c (P) cho tôi enough1 lớn và rất P không phải là một con đường ngắn nhất từ s để c.
tiếp theo chúng tôi sẽ hiển thị rằng con đường ngắn nhất tồn tại nếu không có không có chu kỳ tiêu cực.
bổ đề 25. Nếu G chứa không có chu kỳ tiêu cực và v là thể truy cập từ s thì một ngắn nhất
đường đi từ s đến v tồn tại. Hơn nữa, đường đi ngắn nhất là đơn giản.
bằng chứng. Giả sử nếu không. Cho phép là chi phí tối thiểu của một đường đi từ s đến v và
giả định rằng có một con đường không đơn giản r từ s đến v của chi phí ít hơn. Kể từ khi r là
phòng không đơn giản chúng ta có thể, như trong hình 10.2, viết r là pCq, nơi C là một chu kỳ và pq là
một con đường đơn giản. Sau đó ≤ c(pq) và do đó c(pq) c(C) = c(r) < ≤ c(pq). So
c(C) < 0 và chúng tôi đã cho thấy sự tồn tại của một chu kỳ tiêu cực.
tập thể dục 170. Tăng cường bổ đề ở trên và hiển thị: nếu v là thể truy cập từ s sau đó, một
đường đi ngắn nhất từ s đến v tồn tại iff có là không có chu kỳ tiêu cực có thể truy cập từ s
và từ đó một có thể tiếp cận
cho hai nút s và v, chúng tôi define ngắn nhất con đường khoảng cách μ (s, v) từ s đến v như

 ∞if có là không có đường đi từ s đến v

µ(sv): = −∞if có là không có đường đi ngắn nhất từ s đến v


c (một đường đi ngắn nhất từ s đến v) khác.
quan sát mà nếu v là thể truy cập từ s, nhưng không có đường dẫn ngắn nhất từ s đến v,
sau đó, có các đường dẫn tùy tiện lớn phí tiêu cực. Do đó nó làm cho cảm giác để define
μ (s, v) = −∞ trong trường hợp này. Con đường ngắn nhất có thêm tài sản tốt đẹp mà chúng tôi
nhà nước như bài tập:
tập thể dục 171 (nét của ngắn nhất Paths.). Hiển thị đó nét của đường đi ngắn nhất
có phải mình đường dẫn ngắn nhất, tức là, nếu một con đường của pqr mẫu là một con đường ngắn nhất hơn q
cũng là một đường ngắn nhất
tập thể dục 172 (cây con đường ngắn nhất.). Cho rằng tất cả các nút có thể truy cập từ s
và rằng không có không có chu kỳ tiêu cực. Hiển thị là một cây n-nút T bắt nguồn từ như
s như vậy mà tất cả cây đường dẫn là đường đi ngắn nhất. Gợi ý: giả định chính mà con đường ngắn nhất
độc đáo và xem xét gọn T bao gồm đường dẫn ngắn nhất tất cả bắt đầu từ s. sử dụng
tập thể dục trước để chứng minh rằng T là một cây. Mở rộng trường hợp khi ngắn nhất
đường dẫn không phải là duy nhất.
chiến lược của chúng tôi cho finding đường đi ngắn nhất từ một nguồn nút s là một tổng quát của
thuật toán BFS trong hình 9.3. Chúng tôi duy trì hai NodeArrays d và phụ huynh. Ở đây
d [v] có kiến thức hiện tại của chúng tôi về khoảng cách từ s đến v và phụ huynh [v]
mua sắm tiền thân của v trên con đường ngắn nhất hiện nay để v. Chúng tôi thường đề cập đến
d [v] như cách v, dự kiến. Ban đầu, d [s] = 0 và phụ huynh [s] = s. Tất cả các
nút có khoảng cách infinite và phụ huynh không.
cách tự nhiên để cải thiện khoảng cách giá trị là để truyền bá thông tin khoảng cách
trên cạnh. Nếu có một đường đi từ s tới bạn về chi phí d [u] và e = (u, v) là một cạnh trong
của bạn, sau đó có là một đường đi từ s đến v của chi phí d [u] c(e). Nếu chi phí này là nhỏ hơn
tốt nhất trước đây được biết đến khoảng cách d [v], chúng tôi Cập Nhật d và phụ huynh cho phù hợp. Điều này
quá trình được gọi là cạnh thư giãn.
thủ tục thư giãn (e = (u, v): Edge)
nếu d [u] c(e) < d [v] sau đó d [v]: = d [u] c (e);
phụ huynh [v]: = u
bổ đề 26. Sau khi bất kỳ chuỗi các cạnh thư giãn: nếu d [v] < ∞, sau đó có là một
các đường dẫn của chiều dài d [v] từ s để c.
bằng chứng. Chúng tôi sử dụng cảm ứng về số cạnh thư giãn. Yêu cầu bồi thường là chắc chắn
đúng trước khi thư giãn chính. Đường dẫn có sản phẩm nào là một con đường của chiều dài zero từ s đến v và
tất cả các nút khác có khoảng cách infinite. Xem xét tiếp theo một thư giãn cạnh e = (u, v).
bởi giả thuyết cảm ứng, có là một p đường dẫn của chiều dài d [u] từ s cho bạn và một con đường q của
chiều dài d [v] từ s đến v. Nếu d [u] c(e) ≥ d [v], không có gì để hiển thị. Nếu không,
pe là một con đường của chiều dài d [u] c(e) từ s để c.
chiến lược phổ biến trong các thuật toán trong chương này là để thư giãn cạnh đến
hoặc tất cả các đường dẫn ngắn nhất được tìm thấy hoặc phát hiện ra một chu kỳ tiêu cực. Ví dụ, các
chất béo cạnh trong con số 10.1 cho chúng tôi thông tin phụ huynh thu được sau khi một sufficient
số thư giãn cạnh: nút f, g, tôi và h được thể truy cập từ s sử dụng những
đa cung và đã đạt đến của giá trị tương ứng μ (s, •) 2, −3, −1, và −3. Node b,
j, và d hình thức một tiêu cực chi phí chu kỳ do đó chi phí con đường ngắn nhất của họ là −∞. Nút một là
gắn liền với chu kỳ này và do đó µ(s, a) = −∞.
Một chuỗi các cạnh thư giãn tốt là gì? Cho p = e1,..., ek là một con đường
từ s đến v. Nếu chúng tôi thư giãn cạnh trong trật tự để ek e1, chúng tôi có d [v] ≤ c(p) sau khi
chuỗi thư giãn. Nếu p là một đường đi ngắn nhất từ s đến v, sau đó d [v] không thể thả
dưới đây c(p) bởi bổ đề trước và do đó d [v] = c(p) sau khi trình tự của
thư giãn.
bổ đề 27 (đúng đắn tiêu chí). Sau khi thực hiện một chuỗi R cạnh thư giãn-
ations, chúng tôi có d [v] = μ (s, v) nếu cho một số con đường ngắn nhất p = e1, e2,..., ek từ s
để v, p là một subsequence R, tức là, có những chỉ số t1 < t2 < • • • < tk như vậy mà
R [t1] = e1, R [t2] = e2,..., R [tk] = ek. Hơn nữa, defines thông tin phụ huynh một
các đường dẫn của chiều dài μ (s, v) từ s để c.
bằng chứng. Đây là một cái nhìn sơ của R và p: dòng chính cho biết thời gian. Thời gian n 1,
e1 cạnh thoải mái, tại thời gian t2, e2 cạnh thoải mái, và vv..
1, 2,..., t1,..., t2,...... , tk , . . .
R :=. . . , e 1 , . . . , e2 , . . . . . . , e k,...
p: = e1, e2,..., e k
hiện có μ (s, v) = 1≤j≤k c (ej). Cho tôi ∈ 1..k cho vi là nút mục tiêu của ei và
define t0 = 0 và v0 = s. Sau đó d [vi] ≤1≤j≤i c (ej) sau khi thời gian ti là một đơn giản
cho thấy cảm ứng. Đây là rõ ràng cho tôi = 0 kể từ khi d [s] được khởi tạo zero và d-giá trị
chỉ giảm. Sau khi thư giãn ei = R [ti] cho tôi > 0, chúng tôi có d [vi] ≤
d [vi−1] c (ei) ≤ 1≤j≤i c (ej). Vì vậy sau khi thời gian tk, chúng tôi có d [v] ≤ μ (s, v). Kể từ khi
d [v] không thể đi dưới đây μ (s, v) bởi bổ đề 26, chúng tôi có d [v] = μ (s, v) sau khi thời gian tk và
do đó sau khi thực hiện tất cả thư giãn ở R.
cho chúng tôi tiếp theo chứng minh rằng thông tin phụ huynh dấu vết trong con đường ngắn nhất. Chúng tôi làm như vậy
theo giả định bổ sung rằng con đường ngắn nhất là duy nhất và để lại tướng
trường hợp đến người đọc. Sau khi thư giãn trong R, chúng tôi có d [vi] = μ (s, vi) với 1 ≤ tôi ≤ k.
khi d [vi] đã được thiết lập để μ (s, vi) bởi một hoạt động thư giãn (u, vi), sự tồn tại của một con đường
chiều dài μ (s, vi) từ s để vi được thành lập. Kể từ khi, bởi giả định, ngắn nhất
đường đi từ s tới vi là duy nhất, chúng ta phải có u = vi−1 và do đó phụ huynh [vi] = vi−1.
tập thể dục 173. Làm lại đoạn thứ hai trong chứng minh ở trên, nhưng mà không có như là-
sumption con đường ngắn nhất là duy nhất.
tập thể dục 174. Giả sử ES là các cạnh của G một số để tùy ý và giả sử ES (n-1) là
n − 1 bản sao của các ES. Hiển thị μ (s, v) = d [v] cho tất cả các nút v với μ (s, v) = −∞ sau khi
hoạt động thư giãn ES (n-1).
trong các phần tiếp theo, chúng tôi sẽ triển lãm thêm efficient chuỗi của thư giãn cho
acyclic đồ thị và đồ thị với trọng lượng không âm cạnh. Chúng tôi trở về, tướng
đồ thị là phần 10,5.

đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
10.1 Từ khái niệm cơ bản để một thuật toán chung
Chúng tôi mở rộng chức năng chi phí cho đường dẫn một cách tự nhiên. Chi phí của một con đường là
tổng các chi phí của các cạnh cấu thành của nó, nghĩa là, nếu p = e1, e2,. . . , Ek sau đó c (p) =
1 ≤ i ≤ kc (ei). Con đường trống đã chi phí bằng không.
Đối với một cặp s và v các nút, chúng tôi quan tâm đến một con đường ngắn nhất từ s tới v Chúng tôi
tránh việc sử dụng mạo từ xác định "the", vì có thể có nhiều hơn một ngắn
con đường. Có một con đường ngắn nhất luôn luôn tồn tại? Quan sát thấy số lượng đường đi từ s đến
v có thể là vô hạn. Ví dụ, nếu r = PCQ là một đường đi từ s đến v có chứa một chu kỳ
C, sau đó chúng tôi có thể đi xung quanh chu kỳ một số tùy ý lần và vẫn còn có một
đường đi từ s đến v, xem hình 10.2. Chính xác hơn, p là một con đường dẫn từ s tới u,
C là một con đường dẫn từ u đến u và q là một đường đi từ u đến v Xem xét các con đường r (i)
lần đầu tiên sử dụng p đi từ s tới u, sau đó đi xung quanh chu kỳ i lần, và cuối cùng
sau q từ u đến v Chi phí r (i) là c (p) + i • c (C) + c (q). Nếu C là một cái gọi là
chu kỳ tiêu cực, ví dụ, c (C) <0 thì c (r (i +1)) <c (r (i)). Trong tình huống này không có
con đường ngắn nhất từ s tới v Giả sử nếu không, nói P là một con đường ngắn nhất từ s tới v
Sau đó, c (r (i)) <c (P) cho tôi lớn enough1 và do đó P không phải là một con đường ngắn nhất từ s tới v
Chúng tôi sẽ trình diễn tiếp theo mà đường đi ngắn nhất tồn tại nếu không có chu kỳ tiêu cực.
Bổ đề 25. Nếu G không chứa chu kỳ tiêu cực và v có thể truy cập từ s sau đó một ngắn
đường đi từ s đến v tồn tại. Hơn nữa, con đường ngắn nhất là đơn giản.
Bằng chứng. Giả định khác. Để cho được các chi phí tối thiểu của một con đường đơn giản từ s tới v và
giả định rằng có một con đường r không đơn giản từ s tới v chi phí ít hơn. Kể từ khi r là
không đơn giản chúng ta có thể, như trong hình 10.2, viết r như PCQ, trong đó C là một chu kỳ và PQ là
một con đường đơn giản. Sau đó ≤ c (PQ) và do đó c (PQ) + c (C) = c (r) <≤ c (PQ). Vì vậy,
c (C) <0 và chúng tôi đã cho thấy sự tồn tại của một chu kỳ tiêu cực.
Tập thể dục 170 Tăng cường bổ đề trên và hiển thị:. nếu v là truy cập từ s sau đó một
con đường ngắn nhất từ s tới v tồn tại khi và chỉ khi không có chu kỳ tiêu cực có thể truy cập từ s
và từ đó người ta có thể đạt v
Đối với hai nút s và v, chúng tôi xác định khoảng cách đường đi ngắn nhất μ (s, v) từ s tới v như

 + ∞ nếu không có đường đi từ s đến v

μ (s, v): = - ∞ nếu không có đường đi ngắn nhất từ s tới v


. c (một con đường ngắn nhất từ s tới v) nếu không
quan sát rằng nếu v là truy cập từ s, nhưng không có con đường ngắn nhất từ s đến v,
sau đó có con đường chi phí tiêu cực tùy tiện lớn. Do đó nó làm cho tinh thần để xác định
μ (s, v) = - ∞ trong trường hợp này. Đường đi ngắn nhất có đặc tính thêm tốt đẹp mà chúng tôi
nêu như bài tập:
Tập thể dục 171 (nét thành phần của đường dẫn ngắn nhất.). Cho thấy nét thành phần của đường đi ngắn nhất
là mình đường đi ngắn nhất, tức là, nếu một đường dẫn của hình thức pqr là một con đường ngắn nhất so với q
cũng là một con đường ngắn nhất.
Tập thể dục 172 (Cây con đường ngắn nhất.). Giả định rằng tất cả các nút có thể truy cập từ s
và rằng không có chu kỳ tiêu cực. Cho thấy có một cây n nút T bắt nguồn từ như
s như vậy mà tất cả các con đường hình cây là đường đi ngắn nhất. Gợi ý: giả định đầu tiên mà đường đi ngắn nhất là
độc đáo và xem xét các đồ thị con T bao gồm tất cả các đường đi ngắn nhất bắt đầu từ s. Sử dụng
các bài tập trước để chứng minh rằng T là một cây. Mở rộng đến các trường hợp khi ngắn
con đường không phải là duy nhất.
chiến lược của chúng tôi cho việc tìm kiếm đường đi ngắn nhất từ một nút nguồn s là một sự tổng quát của
thuật toán BFS trong hình 9.3. Chúng tôi duy trì hai NodeArrays d và phụ huynh. Đây
d [v] có kiến thức hiện tại của chúng tôi về khoảng cách từ s tới v và phụ huynh [v]
các cửa hàng tiền thân của v trên con đường hiện ngắn nhất để v Chúng tôi thường gọi
d [v] là khoảng cách dự kiến của v Ban đầu , d [s] = 0 và phụ huynh [s] = s. Tất cả các
nút có khoảng cách vô hạn và không có cha mẹ.
Cách tự nhiên để cải thiện giá trị khoảng cách là tuyên truyền thông tin từ xa
trên các cạnh. Nếu có một đường đi từ s đến u chi phí d [u] và e = (u, v) là một cạnh ra
của u, sau đó có một đường đi từ s đến v chi phí d [u] + c (e) . Nếu chi phí này nhỏ hơn
là tốt nhất được biết đến trước đây khoảng cách d [v], chúng tôi cập nhật d và phụ huynh cho phù hợp. Này
được gọi là quá trình cạnh thư giãn.
Thủ tục thư giãn (e = (u, v): Edge)
nếu d [u] + c (e) <d [v] sau đó d [v]: = d [u] + c (e );
mẹ [v]: = u
Bổ đề 26 Sau khi bất kỳ chuỗi nới lỏng cạnh: Nếu d [v] <∞, sau đó có một.
con đường của chiều dài d [v] từ s tới v
Proof. Chúng tôi sử dụng cảm ứng trên số nới lỏng cạnh. Tuyên bố chắc chắn là
đúng trước khi thư giãn đầu tiên. Con đường trống là một con đường dài không từ s tới v và
tất cả các nút khác có khoảng cách vô hạn. Xem xét tới một thư giãn của cạnh e = (u, v).
bởi giả thuyết quy nạp, có một con đường có chiều dài p d [u] từ s tới u và q con đường của
chiều dài d [v] từ s tới v Nếu d [u] + c (e) ≥ d [v], không có gì để hiển thị là. Nếu không,
pe là một con đường có chiều dài d [u] + c (e) từ s tới v
Chiến lược chung của các thuật toán trong chương này là để thư giãn cạnh cho đến khi
hoặc là tất cả đường đi ngắn nhất được tìm thấy hoặc một chu kỳ tiêu cực được phát hiện. Ví dụ,
cạnh chất béo trong hình 10.1 cho chúng ta những thông tin thu được sau khi cha mẹ một đủ
số nới lỏng cạnh: các nút e, g, i, h và có thể truy cập từ s sử dụng các
cạnh và đã đạt μ tương ứng của họ (s, •) giá trị 2, -3, -1, -3. Nút b,
j, và d tạo thành một chu kỳ chi phí tiêu cực như vậy mà chi phí đường đi ngắn nhất của họ là - ∞. Nút một được
gắn liền với chu kỳ này và do đó μ (s, a) = -. ∞
một chuỗi tốt của nới lỏng cạnh là gì? Cho p = e1,. . . , Ek là một đường dẫn
từ s tới v Nếu chúng ta thư giãn các cạnh theo thứ tự e1 để EK, chúng ta có d [v] ≤ c (p) sau khi
trình tự nghỉ ngơi. Nếu p là một con đường ngắn nhất từ s tới v, sau đó d [v] có thể không giảm
dưới c (p) của Bổ đề trước và do đó d [v] = c (p) sau khi trình tự của
nghỉ ngơi.
Bổ đề 27 (đúng đắn Tiêu chuẩn) . Sau khi thực hiện một chuỗi R của cạnh thư giãn-
ations, chúng ta có d [v] = μ (s, v) nếu vì một con đường ngắn nhất p = e1, e2,. . . , Ek từ s
đến v, p là một dãy của R, tức là, có chỉ số T1 <T2 <• • • <tk như vậy mà
R [t1] = e1, R [t2] = e2,. . . , R [tk] = ek. Hơn nữa, thông tin cha mẹ xác định một
con đường dài μ (s, v) từ s tới v
Proof. Đây là một cái nhìn sơ đồ mạch của R và p: hàng đầu tiên chỉ ra thời gian. Tại thời điểm t 1,
các e1 cạnh là thoải mái, lúc t2, các e2 cạnh là thoải mái, và như vậy.
1, 2,. . . , T1,. . . , T2,. . . . . . , Tk,. . .
R: =. . . , E 1,. . . , E2,. . . . . . , Ek,. . .
p: = e1, e2,. . . , Ek
Chúng tôi đã μ (s, v) = 1 ≤ j ≤ kc (ej). Cho i ∈ 1 .. k cho vi là nút mục tiêu của ei và
xác định t0 = 0 và v0 = s. Sau đó d [vi] ≤ 1 ≤ j ≤ ic (ej) sau thời gian ti như một đơn giản
cho thấy cảm ứng. Này là rõ ràng cho i = 0 từ d [s] được khởi tạo bằng không và d-giá trị
chỉ giảm. Sau khi thư giãn của ei = R [ti] cho i> 0, chúng ta có d [vi] ≤
d [vi-1] + c (ei) ≤ 1 ≤ j ≤ ic (ej). Do đó sau khi thời gian tk, chúng ta có d [v] ≤ μ (s, v). Từ
d [v] không thể xuống thấp hơn μ (s, v) của Bổ đề 26, chúng ta có d [v] = μ (s, v) sau thời gian tk và
do đó sau khi thực hiện tất cả các nới lỏng trong R.
Hãy để chúng tôi tiếp theo chứng minh rằng phụ huynh thông tin vạch ra đường đi ngắn nhất. Chúng tôi làm như vậy
theo giả định thêm rằng đường đi ngắn nhất là duy nhất và rời khỏi chung
trường hợp cho người đọc. Sau khi nới lỏng trong R, chúng ta có d [vi] = μ (s, vi) cho 1 ≤ i ≤ k.
Khi d [vi] được thiết lập để μ (s, vi) bởi một hoạt động thư giãn (u, vi), sự tồn tại của một con đường
dài μ (s, vi) từ s đến vi được thành lập. Kể từ đó, theo giả thiết, ngắn
đường đi từ s đến vi là duy nhất, chúng ta phải có u = vi-1 và vì vậy cha mẹ [vi] = vi-1.
Tập thể dục 173. Làm lại đoạn thứ hai trong chứng minh ở trên, nhưng không có như -
. mức tiêu thụ mà đường đi ngắn nhất là duy nhất
Tập thể dục 174 Hãy ES là các cạnh của G theo một trật tự tùy ý và để cho ES (n-1) được.
n - 1 bản sao của ES. Hiện μ (s, v) = d [v] cho tất cả các nút v với μ (s, v) = - ∞ sau
. thực hiện nới lỏng ES (n-1)
Trong phần tiếp theo, chúng tôi sẽ triển lãm các chuỗi hiệu quả hơn của nới lỏng cho
đồ thị mạch hở và đồ thị với trọng lượng cạnh không âm. Chúng tôi trở lại chung
đồ thị là 10.5.

đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2024 I Love Translation. All reserved.

E-mail: