diff --git a/src/floyd_warshall.h b/src/floyd_warshall.h
index 96c7b0ba0adfebefd98252d5a083fea670a2ca6c..348914c2009de4bbd6fe23c8920c14e8ca948a35 100644
--- a/src/floyd_warshall.h
+++ b/src/floyd_warshall.h
@@ -27,13 +27,13 @@ class FloydWarshall {
          * Imprime caminho, que deve ser calculado previamente.
          * @return 0 se for impresso alguma coisa, 1 caso contrário.
          */
-        int imprimir_caminho(int final) {
+        int imprimir_caminho(int inicial, int fin) {
 
-            std::list<t_vertice> caminho = listar_caminho(final);
+            std::list<int> caminho = listar_caminho(inicial, fin);
 
             std::cout << "Caminho: ";
             std::copy(caminho.begin(), caminho.end(),
-                      std::ostream_iterator<t_vertice>(std::cout, " "));
+                      std::ostream_iterator<int>(std::cout, " "));
             std::cout << std::endl;
 
             return 0;
@@ -104,11 +104,11 @@ class FloydWarshall {
             return 0;
         }
 
-        std::list<t_vertice> listar_caminho(t_vertice vertice) {
+        std::list<int> listar_caminho(int inicial, int fin) {
 
-            std::list<t_vertice> path;
-            for ( ; vertice != -1; vertice = vet_anteriores_[vertice]) {
-                path.push_front(vertice);
+            std::list<int> path;
+            for (int vertice = inicial; vertice != -1; vertice = grafo_proximos_.get_value(vertice, fin)) {
+                path.push_back(vertice);
             }
 
             return path;
@@ -121,12 +121,11 @@ class FloydWarshall {
 
         void imprime_grafo() {
             std::cout << grafo_ << std::endl;
+            //std::cout << grafo_proximos_ << std::endl;
         }
 
     protected:
         t_matriz_adjacencia grafo_, grafo_proximos_;
-        std::vector<t_vertice> vet_anteriores_;
-        std::vector<t_peso> vet_distancia_;
 
 };
 
@@ -155,7 +154,7 @@ class FloydWarshallSerial: public FloydWarshall {
                         if (lik + lkj < lij) {
                             //std::cout << "Atualizando..." << std::endl;
                             grafo_.values_[i * n + j] = lik + lkj;
-                            //grafo_proximos_.set_value(i, j, m.get_value(i, k));
+                            //grafo_proximos_.set_value(i, j, k);
                         }
                     }
                 }
@@ -193,7 +192,7 @@ class FloydWarshallParalelo: public FloydWarshall {
                         if (lik + lkj < lij) {
                             //std::cout << "Atualizando..." << std::endl;
                             grafo_.values_[i * n + j] = lik + lkj;
-                            //grafo_proximos_.set_value(i, j, m.get_value(i, k));
+                            //grafo_proximos_.set_value(i, j, k);
                         }
                     }
                 }
diff --git a/src/main_floyd_warshall.cpp b/src/main_floyd_warshall.cpp
index 0660e042f2d7f66addb935ad05ed2345dd869ca5..2d68209f79ad07cde0eab3e270ccb149954cc684 100644
--- a/src/main_floyd_warshall.cpp
+++ b/src/main_floyd_warshall.cpp
@@ -27,7 +27,7 @@ int main(int argc, char **argv) {
             std::cout << "Calculando Paralelo..." << std::endl;
             floyd_warshall_paralelo.calcular_caminho(qtde_vertices);
             floyd_warshall_paralelo.imprime_grafo();
-            //floyd_warshall_paralelo.imprimir_caminho(v_final);
+            //floyd_warshall_paralelo.imprimir_caminho(3, 1);
         }
 
     #else
@@ -39,7 +39,7 @@ int main(int argc, char **argv) {
             std::cout << "Calculando Serial..." << std::endl;
             floyd_warshall_serial.calcular_caminho(qtde_vertices);
             floyd_warshall_serial.imprime_grafo();
-            //floyd_warshall_serial.imprimir_caminho(v_final);
+            //floyd_warshall_paralelo.imprimir_caminho(3, 1);
         }
 
     #endif
diff --git a/src/tipos_floyd_warshall.h b/src/tipos_floyd_warshall.h
index 71eb1f7a86c756154b7db2cd041df3de4b909116..34cdac14560f6b13a9570a34ee86a9b95ac28136 100644
--- a/src/tipos_floyd_warshall.h
+++ b/src/tipos_floyd_warshall.h
@@ -1,21 +1,4 @@
 #pragma once
 #define INC_ALLOC 5000
 
-typedef double t_distancia;
-typedef double t_peso;
-typedef int t_vertice;
-
-typedef struct vizinho {
-    t_vertice parceiro; /* a quem está ligado */
-    t_vertice proximo;  /* qual é o próximo vértice para andar até chegar */
-    t_peso distancia;   /* qual a distancia para chegar */
-    t_peso peso;        /* peso da aresta que liga ao parceiro */
-    vizinho(t_vertice arg_parceiro, t_peso arg_peso):
-        parceiro(arg_parceiro),
-        proximo(-1),
-        distancia(arg_peso),
-        peso(arg_peso) {
-        };
-} vizinho;
-
 typedef Matrix<double> t_matriz_adjacencia;