9. Anexos.
9. Anexos.
9. Anexos.
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
If SolucionMST(i).Inactivo = False Then<br />
ReDim Preserve Solucion(Tamano)<br />
Tamano = Tamano + 1<br />
Solucion(j) = SolucionMST(i)<br />
j = j + 1<br />
End If<br />
Next i<br />
End Sub<br />
<strong>9.</strong>2.2.3. El algoritmo de Dijkstra.<br />
Módulo: Dijkstra.bas<br />
Option Explicit<br />
Option Base 1<br />
Private Type Reg_L<br />
Valor As Long<br />
Visto As Boolean<br />
End Type<br />
Dim Mat_C() As Long<br />
Dim Mat_L() As Reg_L<br />
Dim NodosAdy() As Lista_Ady<br />
<strong>Anexos</strong>.<br />
Public Sub Hallar_CamMin_Dijkstra(ByRef Vector() As Reg_Arcos, NumeroNodos As Long, NodosOrigen() As<br />
Long, Solucion() As Reg_Arcos, Origen As Integer)<br />
Dim i As Integer, j As Integer<br />
Dim D() As Single<br />
Calcular_Matriz_Pesos Vector, NumeroNodos, D()<br />
Calcular_Adyacentes Vector, NodosAdy, False<br />
Dijkstra NodosOrigen(Origen), NumeroNodos, D()<br />
Interpreta_MatrizAdy Vector, Solucion, D(), NodosOrigen(Origen)<br />
If Origen < UBound(NodosOrigen) Then<br />
34