Page 88 - INTRODUCCIÓN AL ANÁLISIS DE ALGORITMOS
P. 88

INTRODUCCIÓN AL ANÁLISIS  DE ALGORITMOS


                             a u, el vértice u viene a ser miembro de S. En este punto la dimensión del trayecto
                             más corto iniciando en v  irá en los vértices localizados en S y terminando en w
                                                     0
                             no en S puede decrecer. Esto es, el valor de la distancia DIST(w) puede cambiar.
                             Si cambia, se debe a que existe un trayecto más corto iniciando en v y posterior-
                                                                                               0
                             mente va a u y entonces a w. Los vértices intermedios de v a u y de u a w deben
                                                                                     0,
                             estar todos en S. Además, el trayecto v a u debe ser el más corto; de otra manera,
                                                                  0
                             DIST(w) no está definido en forma apropiada. También, el trayecto u a w puede no
                             contener vértices intermedios.




                  Las observaciones arriba indicadas crean un algoritmo simple, el cual fue desarrollado por Dijkstra
                  (este algoritmo es la base para el ruteo en internet). De hecho, solo determina la magnitud de la tra-
                  yectoria del vértice v a todos los vértices en G.
                                     0
                  Se asume que los n vértices en G se numeran de 1 a n. El conjunto se mantiene S con un arreglo
                  con S(i) = 0 si el vértice i no se encuentra en S y S(i) = 1 si pertenece a S. Se asume que la gráfica
                  se representa por una matriz de costos. Horowitz y Sahni (1978) muestran el algoritmo general 3.4
                  en formato pseudocódigo.



                                      Algoritmo 3.4. Método de Dijkstra para la ruta más corta











































                                                               82
   83   84   85   86   87   88   89   90   91   92   93