.


:




:

































 

 

 

 


.

һ

.

( )

 

2

:

:

 

:

-. -71

.

 

:

..

 

 

2012

, , . .

 

G = (X, U) S = (0, 1), (x1, 2),..., ((l-I), x(l)), (), (l) - . , G . S . q R G q- .

, R G

 

         
         
         
         
         

 

 

 
 

 


 

 

1

 

. , , .

:

 

         
         
         
         
         

 

 

, 0 = 1, .

, , , , . G

S1 = (x1, 2), (2, 3), (3, 4),(4,1),(1,2) -

S2 = (1, 2), (2, 3), (3, 4), (4, 1)

 
 

 

 


2

 

S3= (1,2)(2,3)(3,4)

S4= (1,2)(2,4)(4,5)(5,3)(3,2)(2,4) .

3 .

. .

                   
                   
                   
                   
                   
                   
                   
                   
                   
                   

 

 

.

1) R G

xk V(k) = 0, V(n) = M.

2) 1 xi.

V(j) > V(i) + rij. V(j) V(i) + rij.

3) 1,2 .

4) .

.

#include <iostream>

 

using namespace std;

 

int main()

{

const int n = 9;

int m[n][n] = { {0,3,0,6,0,0,0,7,3},

{3,0,5,0,0,0,0,9,11},

{0,5,0,8,6,0,0,0,12},

{6,0,8,0,3,0,14,10,5},

{0,0,6,3,0,2,4,6,0},

{0,0,0,0,2,0,15,13,0},

{0,0,0,14,4,15,0,1,0},

{7,9,0,10,6,13,1,0,3},

{3,11,12,5,0,0,0,3,0}};

int V[n],xk,cache;

xk = m[0][0];

for(int j = 0; j < n; j++)

{

if(j == 0)

V[j] = xk;

else

V[j] = -1;

 

}

for(int i = 0; i < n; i++)

{

for(int j =i; j < n; j++)

{

if(m[i][j]!= 0)

{

if(V[j] == -1)

{

V[j] = V[i] + m[i][j];

}

else

if(V[j] < V[i] + m[i][j])

break;

else

V[j] = V[i] + m[i][j];

/*else

if(cache < V[j])

V[j] = V[i] + m[i][j];

else

V[j] = m[i][j];*/

}

 

}

}

for(int i =0; i < n; i++)

cout << V[i] << " ";

return 0;

}

 

. . .

                   
                   
                   
                   
                   
                   
                   
                   
                   
                   

 

.

1. l(s) = 0, l(xi) = -1 xi!= s .

2. l(xi) <- min[l(xi); l(p) + r(p,xi)] .

3. , l(xi) = min[l(xi)]/

4. xi p = xi.

 

 



<== | ==>
, , . | 
:


: 2017-01-28; !; : 437 |


:

:

80% - .
==> ...

1786 - | 1641 -


© 2015-2024 lektsii.org - -

: 0.016 .